0

我已经创建了一个 XML 文件,并且可以在 jQuery 中成功解析该文件。XML 文件由成对的选择器和 css/html 操纵器组成。

例如:这里是console.log。

找到会话

找到子选择器

属性$(".monday td.session.m_2_title")

attributes.css("背景颜色", "#00ffff");

$(".monday td.session.m_2_title").css("背景色", "#00ffff");

这是示例代码:

    $(xml_Data).find("session").each(function() {
    console.log("found session");
    $(this).children().each(function(){
       var tag = this.tagName;  
       console.log("found child " + this.tagName);
       console.log("attributes" + $(this).text());
       if (this.tagName == "selector"){
            //$(this).next();
            console.log("attributes" + $(this).next().text());
            console.log($(this).text() + $(this).next().text());
            $(this).text() + $(this).next().text();
       }
    });
});

我怀着狂野的乐观态度认为:

$(this).text() + $(this).next().text();

将导致脚本运行连接字符串的语句。显然这是错误的。

问题是我如何将 xml 数据放在一起以创建和运行适当的语句。

4

1 回答 1

0

您需要使用 jQuery 创建一个标签,将此行 ( $(this).text() + $(this).next().text()) 的输出放入其中并将其插入到您的文档中。

var script=document.createElement('script');
script.type='text/javascript';
$(script).html( $(this).text() + $(this).next().text());
$("body").append(script);
​

或者你可以使用 eval("code in string here"),不推荐使用。

或者你可以使用这样的函数声明:var foo = new Function ([arg1[, arg2[, ... argN]],] functionBody)函数体应该是你的 JS 代码的字符串

于 2012-09-10T19:24:52.407 回答