2012-07-14 62 views
1

步骤1 -如何将撇号字符分配给html数据属性值?

我使用post方法返回数据值,并且数据值可能会返回撇号字符并将值分配给变量。例如,

var returnData = "Test's failure"; 

第2步 -

接下来,我试图将变量分配给一个数据类型的这样的值:

$("testList").append("<li data-test='"+ returnData +"'>" + test_List + " </li>); 

总结 -

当使用firebug查看放置在属性data-test中的变量returnData的值,它显示Test的值和未添加的失败。我该如何解决这个问题?

+0

你需要逃避你的HTML。请看这里http://stackoverflow.com/questions/24816/escaping-html-strings-with-jquery – 2012-07-14 20:14:40

+2

请注意''(“testList”)'什么也不选。 – undefined 2012-07-14 20:15:06

回答

2

只是要在安全方面:

$("<li />").data("test", returnData).html(test_List).appendTo("#testList"); 

或者,如果你需要的属性:

$("<li />", { 
    "data-test" : returnData 
}).html(test_List).appendTo("#testList");​ 

DEMO:http://jsfiddle.net/ZyMCk/

+0

谢谢VisionN,我会试试看 – 2012-07-14 20:17:53

相关问题