jQuery - 检查XML属性是否存在

时间:2010-11-11 11:13:47

标签: jquery xml ajax

我正在使用图像或flash影片在HTML中填充一组<article>,具体取决于XML中设置的属性,

<article image="" flash="flash/1.swf"></article>// this article has flash only
<article image="image/1.jpg" flash=""></article>// this article has image only

根据XML文件,有“n”个“文章”。每篇文章都有图像或flash电影。

使用.ajax()加载XML后,我正在使用.append()<img><object>添加到文章中。问题是,现在我在每篇文章中都有空标签(img或object)。分配有图像的所有文章都包含空白<object>标记,反之亦然。

如何在追加之前检查XML?因此,当文章被分配了图像时,<object>标记不会出现?

jQuery如下所示

$('#container').append('<article><img src="'+$image+'"/><object><param name="movie" value="'+$flash+'"></object></article>');

3 个答案:

答案 0 :(得分:1)

这对我有用

var $flash = $(this).attr('flash');
if ($flash == null) {
...
}
else {
...
}

答案 1 :(得分:0)

如果订单对您不重要,您应首先过滤闪存属性, 而不是图像属性。 否则就像:

.append('<article>' + ($image != null) ? <img.. : <object..) + "</article>";

答案 2 :(得分:0)

在将属性赋值给变量之前,应先检查属性是否存在。

if($(this).attr('flash');){

    // this attribute exists 
    // you can also check if its null or not

} else {

    // this attribute does NOT exist
}