撇号在javascript中抛弃输入值

时间:2016-01-07 19:17:25

标签: javascript arrays

我有一系列名字。例如“戴维斯,约旦”,“奥基夫,布雷特”,“国王,詹姆斯”等。

我循环遍历此数组并将这些值分配给输入字段的值。这些输入字段位于表格单元格内。见下文。

var name="<input name='name"+x+"' id='name"+x+"' readonly value='"+array3[i]['Assoc_Name']+"'>";

问题在于诸如“O'Keefe,Bret”这样的名字,姓氏中的撇号会抛出该值并显示如下: enter image description here 但是,当我使用console.log(array3 [i] ['Assoc_Name'])时,它会打印出整个名字,就像O'Keefe,Bret。

我做错了什么?

3 个答案:

答案 0 :(得分:1)

你可以改写它来切换&#39;到&#34;

var name='<input name="name'+x+'" id="name'+x+'" readonly value="'+array3[i].Assoc_Name+'">';

答案 1 :(得分:1)

您也可以在html

中转义"
var name = "<input name=\"name"+x+"\" id=\"name"+x+"\" readonly value= \""+array3[i].Assoc_Name+"\">";

答案 2 :(得分:0)

HTML中,单引号转义为&#39;

因此,与O'Keefe的HTML兼容版本是:

O&#39;Keefe

如果您在javascript中使用此字符串作为字符串,则无需在脚本中使用单引号。