9

我需要将结果数据集中的一个值附加到input可能具有任何特殊字符*^&$#>,'"等的 a 中。问题是我无法将整个附加varinput.

请检查这个小提琴。我错过了什么?

我不能在不使用.find.append喜欢这个的情况下做到这一点吗?

4

3 回答 3

3

.find因此,为了在不单独使用或附加的情况下解决这个问题var,我找到了一个简单的解决方案。single quote我只需要用其iso latin代码和其他特殊字符替换它们各自'代码,然后使用该变量.html

var something= "this is vicky\"s \"s 's 's \"s \"S";
test=something.replace(/'/g,"'").replace(/"/g,'\\"');
$("#test").html("hey this is <input id='testbox' value='"+test+"'></input>");

看看这个jsfiddle

于 2013-06-27T04:03:08.590 回答
3

这是因为您正在连接字符串,这没有考虑特殊字符的转义。您应该改为设置值,.val以便正确转义该值。此外,正则表达式是不必要的。

$(document).ready(function(){
    var test= "this is vicky\"s \"s 's 's \"s \"S";

    alert(test);

    var input = $("<input style='width:700px;' id='testbox'></input>").val(test);

    $("#test").html("hey this is ").append(input);

});

在 jsFiddle 上查看更新的测试用例

于 2013-06-26T07:06:52.177 回答
1

我尝试了很多东西终于奏效了:

var getClinician = row.ClinicianName;
getClinician = getClinician.replace(/"/g, "&quot;");

var Clinician = '<td align=""><input type="text" id="txt_Clinician_' + row.ScheduleID + '" value="' + getClinician + '"  />';
于 2019-10-01T12:30:24.227 回答