使用JQuery通过javascript读取XML
我有一个JavaScript函数代码,希望在其中发出警报使用JQuery通过javascript读取XML,javascript,jquery,xml,Javascript,Jquery,Xml,我有一个JavaScript函数代码,希望在其中发出警报 function msgalert(x,y) { tempstr = x.value if(tempstr.length>y) { alert(c_AcknowledgementText); x.value = tempstr.substring(0,y); } } 现在我有一个xml,格式如下: <?xml version="1.0" encoding="utf-8" ?> <root>
function msgalert(x,y)
{
tempstr = x.value
if(tempstr.length>y)
{
alert(c_AcknowledgementText);
x.value = tempstr.substring(0,y);
}
}
现在我有一个xml,格式如下:
<?xml version="1.0" encoding="utf-8" ?>
<root>
<key name="c_ContactUsHeading">Contact Us</key>
<key name="c_AcknowledgementText">Comments can not be more than 250 characters.</key>
</root>
联系我们
注释不能超过250个字符。
我需要JavaScript代码,以便可以从上面的xml键名“c_AcknowledgementText”读取上述警报中显示的消息
我正在尝试下面的代码,但无法解决问题,请您看看
<script language="javascript" type="text/javascript">
function msgalert(x,y)
{
tempstr = x.value
if(tempstr.length>y)
{
$(document).ready(function(){
$.ajax({
type: "GET",
url: "../includes/ResourceData.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('key').each(function(){
var title = $(this).find('name').text();
);
});
}
});
});
}
}
</script>
函数msgalert(x,y)
{
tempstr=x.value
如果(临时长度>y)
{
$(文档).ready(函数(){
$.ajax({
键入:“获取”,
url:“../includes/ResourceData.xml”,
数据类型:“xml”,
成功:函数(xml){
$(xml).find('key').each(function(){
var title=$(this.find('name').text();
);
});
}
});
});
}
}
有些地方我需要修改上述函数,以便使用它通过XML提供警报值。我无法真正理解您试图做什么,但此代码是错误的:
var title = $(this).find('name').text();
此时,这个
就是您正在循环的当前
元素。要获取此元素的name
属性的值,需要执行以下操作:
var title = $(this).attr('name');
然后要获取此元素的内容,您可以执行以下操作:
var title = $(this).text();
针对您的评论,我认为您希望:
var title = $(this).find('key[name=c_AcknowledgementText]').text();
alert(title);
我真的不明白你想做什么,但这段代码是错误的:
var title = $(this).find('name').text();
此时,这个
就是您正在循环的当前
元素。要获取此元素的name
属性的值,需要执行以下操作:
var title = $(this).attr('name');
然后要获取此元素的内容,您可以执行以下操作:
var title = $(this).text();
针对您的评论,我认为您希望:
var title = $(this).find('key[name=c_AcknowledgementText]').text();
alert(title);
所以有一些不同的方法来解决这个问题,你可以
$(xml).find([name='key']).each(function(){
alert($(this).text());
});
这将查找name属性等于“key”的所有元素,然后用该元素的文本发布警报。因此有一些不同的方法来解决此问题,您可以
$(xml).find([name='key']).each(function(){
alert($(this).text());
});
这将查找name属性等于“key”的所有元素,然后用该元素的文本发布警报。我想匹配,如果attribute name=“c_AcknowledgementText”,那么它应该显示属性c_AcknowledgementText中给出的文本的警报消息。我想匹配,如果属性name=“c_AcknowledgementText”,那么它应该显示属性c_AcknowledgementText中给出的文本的警报消息。我怎么做?