gpt4 book ai didi

java - 如何从 servlet 发送数组并在 HTML jquery 中接收?

转载 作者:行者123 更新时间:2023-12-01 15:52:26 24 4
gpt4 key购买 nike

我正在使用 dom 解析上传的 XML 文件,生成字符串,其中主机名和操作系统名被制成以 , 分隔符分隔的字符串。 s 是带有此字符串的变量,我使用 response.getWriter 对象 obj 将其发送回 HTML。但我不想打印它,例如: Windows,Abhishek 我想用分隔符 , 将其分开。有人可以向我展示如何在 jQuery 或 JS 中接收该字符串然后将其拆分为两个字符串的示例代码吗?

try {
out.println("Using Commons File Upload");
List items = uploadHandler.parseRequest(request);
Iterator itr = items.iterator();
String str=null;
while(itr.hasNext()) {
FileItem item = (FileItem) itr.next();

if(item.isFormField()) {

/*out.println("Form Input Name = "+item.getFieldName()+", Form Input Value = "+item.getString());*/
} else {
/*out.println("Field Name = "+item.getFieldName()+
", File Name = "+item.getName()+
", Content type = "+item.getContentType()+
", File Size = "+item.getSize()); */
File file = new File(destinationDir,item.getName());

item.write(file);

str=item.getName();

try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
File xmlFile = new File(destinationDir,str);

if (file.exists()) {
Document doc = db.parse(xmlFile);
Element docEle = doc.getDocumentElement();

NodeList csmList = docEle.getElementsByTagName("system");

if (csmList != null && csmList.getLength() > 0) {
for (int i = 0; i < csmList.getLength(); i++) {

Node node = csmList.item(i);

if (node.getNodeType() == Node.ELEMENT_NODE) {

Element e = (Element) node;
NodeList nodeList = e.getElementsByTagName("hostname");
s=nodeList.item(0).getChildNodes().item(0).getNodeValue();
//System.out.println("HOSTNAME: "+ nodeList.item(0).getChildNodes().item(0).getNodeValue());

nodeList = e.getElementsByTagName("osname");
s+=","+nodeList.item(0).getChildNodes().item(0).getNodeValue();
//System.out.println("OSNAME: " + nodeList.item(0).getChildNodes().item(0) .getNodeValue());
}
}
out.println(s);
}
}
else {
System.out.println("File Not Found");
}

}
catch (Exception e) {
System.out.println(e);
}

}

}
out.close();
System.out.println(str);


}catch(FileUploadException ex) {
log("Error encountered while parsing the request",ex);
} catch(Exception ex) {
log("Error encountered while uploading file",ex);
}

Javascript部分:

function postData() {
$.post("/com/FileUploadServlet", { "file": "/com/FileUploadServlet" }, function(data) {
alert(data);
});
}

$(document).ready(function() {
postData();
});

alert(data); 打印 “Using Commons File Upload”,但在 servlet 中 out.println(s); 不打印在警报中向我提供我的数据,但它显示为空白。

最佳答案

您声明要向浏览器发送一个逗号分隔的字符串,并且希望在 Javascript/JQuery 中用逗号分隔它。这是对你的问题的合理总结吗?我发现它很难读,但我认为这就是你所问的,所以这就是我会回答的。 :)

Javascript 有一个 .split() 方法,您可以在任何字符串变量上使用该方法。

因此,当您在 Javascript 代码中接收字符串时,您可以简单地执行如下操作:

var splitstring = inputstring.split(',');

希望有帮助。 (尽管我确实感觉这个问题比我的解释更多)

关于java - 如何从 servlet 发送数组并在 HTML jquery 中接收?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5740504/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com