如何在jquery中将字符串转换为xml对象
How to convert string to xml object in jquery
我研究了用JavaScript将字符串转换为XML文档,但在我的情况下找不到解决方案,有人能帮我吗。
我有一个字符串,如下所示,我想将其转换为XML对象,我该怎么做?
<list>
<Response>
<cfgId>280</cfgId>
<recommendations><Rule>
<name>simple rule</name>
<category>none</category>
<severity>warning</severity>
<ruleEvalResult>true</ruleEvalResult>
<actionResult> Current value of maxfilesperproc is 32
increase it to 1024</actionResult>
</Rule></recommendations>
</Response>
</list>
上述xml 的可读版本
<list>
<Response>
<cfgId>280</cfgId>
<recommendations>
<Rule> <name>simple rule</name> <category>none</category> <severity>warning</severity> <ruleEvalResult>true</ruleEvalResult> <actionResult>Current value of maxfilesperproc is 32
increase it to 1024</actionResult> </Rule>
</recommendations>
</Response>
</list>
更新,以下是我尝试的内容
var xml;
$.post("/csm/rules.action",
{ sessiontoken: sessiontoken,
cfgid: cfgid},
function(xmldata)
{
xml=$(xmldata);
}
);
var htmlTable = $('<table></table>');
$(xml).find('Response').each(function(){
var cid = $(this).find('cfgId').text();
alert(cid+", "+cfgid);
if(cid==cfgid) {
// Now grab the entitiy string
var newXmlString = $(xml).find('recommendations').text();
// Convert the entities to HTML and return a jQuery object
var newXml = $("<div/>").html(newXmlString);
// NOW we can get at the inner XML
var ruleseverity=$(newXml).find('severity').text();
if(ruleseverity=="warning") {
var rulename=$(newXml).find('name').text();
var rulecategory=$(newXml).find('category').text();
var ruleresult=$(newXml).find('ruleEvalResult').text();
var ruleactionresult=$(newXml).find('actionResult').text();
htmlTable.append('<tr><td>RuleName:'+rulename+'</td><td>RuleResult: '+ruleactionresult+'</td></tr>');
}
}
});
我稍后在代码'<div class="block">'+htmlTable+'</div>'
中添加htmlTable
我根本不报警
尽管它可能是用JavaScript将字符串转换为XML文档-我们可以使用jquery解码html实体的一些帮助
我做了一把小提琴
// the $() creates a jQuery object of the outer XML
var xml = $('<list><Response><cfgId>280</cfgId><recommendations><Rule><name>simple rule</name><category>none</category><severity>warning</severity><ruleEvalResult>true</ruleEvalResult><actionResult> Current value of maxfilesperproc is 32 increase it to 1024</actionResult></Rule></recommendations></Response></list>');
更新这更正确:
http://jsfiddle.net/mplungjan/ppj3nquL/
var xmlString = '<list><Response><cfgId>280</cfgId><recommendations><Rule><name>simple rule</name><category>none</category><severity>warning</severity><ruleEvalResult>true</ruleEvalResult><actionResult> Current value of maxfilesperproc is 32 increase it to 1024</actionResult></Rule></recommendations></Response></list>';
var xmlDocument = $.parseXML(xmlString);
var $xml = $(xmlDocument);
var cfgid = 280;
var htmlTable = $('<table></table>');
$xml.find('Response').each(function() {
var cid = $(this).find('cfgId').text();
if (cid == cfgid) {
// Now grab the entitiy string
var newXmlString = $(this).find('recommendations').text();
// Convert the entities to HTML and return a jQuery object
var newXml = $("<div/>").html(newXmlString);
// NOW we can get at the inner XML
var ruleseverity = $(newXml).find('severity').text();
if (ruleseverity == "warning") {
var rulename = $(newXml).find('name').text();
var rulecategory = $(newXml).find('category').text();
var ruleresult = $(newXml).find('ruleEvalResult').text();
var ruleactionresult = $(newXml).find('actionResult').text();
htmlTable.append('<tr><td>RuleName:' + rulename + '</td><td>RuleResult: ' + ruleactionresult + '</td></tr>');
}
}
});
$("#container").append(htmlTable);
td {
border: 1px solid black
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="container"></div>
使用jQuery.parseXML来解析您的xml
相关文章:
- 将XML转换为普通的旧JavaScript对象
- JSON到XML的转换
- IE10+11:XSLT转换将任意CR/LF添加到XML中
- Mongo-JS-如何将BSON/JSON对象转换为XML
- 将ActiveXObject返回值转换为JQuery Object以处理XML
- XML字符串转换为JSON javascript
- IE8DOM转换XML,并且不从jQueryfind()或filter()返回任何内容
- 将 XML 数据转换为 json 格式 AngularJS
- 如何将xml文件转换为javascript中的对象文字
- 如何在IE 10/11中可靠地将XML转换为字符串
- 使用php解析xml并将其转换为json以与$.ajax一起使用时遇到问题
- 将普通数据转换为xml数据的图像滑块
- 将xml站点地图转换为可用链接的JavaScript
- 递归地将嵌套xml转换为嵌套html
- 如何在html中转换XML文档中的html特殊字符
- Regexp与变量:如何转换xml与属性的html使用javascript替换方法
- 在JavaScript中解析和转换XML字符串
- Htmlparser2转换XML对象为字符串
- 通过PHP转换XML &Javascript函数
- 我如何使用JavaScript转换XML &XSLT