javascript - JQuery - 用 html 转义替换引号

标签 javascript jquery

表格显示了从我网站上的数据库中抓取的数据,当单击按钮时,将使用 onclick 属性调用“enableEditing”函数。然后,对于表中每一行的一个字段,将出现一个输入文本框,使用该字段作为值,使用键作为输入名称。

之前:

<tr class="data_row">
    <td class="property_cell">project ref</td>
    <td class="myNumber">200407</td>
</tr>

之后:

<tr class="data_row">
    <td class="property_cell">project ref</td>
    <td class="myNumber">
        <input name="project ref" value="200407">
    </td>
</tr>

jQuery:

function enableEditing(){

    $("#object_data tr").each(function(){
        var key = $(this).children(".property_cell").html();
        var value = $(this).children(".myNumber").text();
        $(this).children(".myNumber").html("<input name='" + key + "' value='" + value + "'>");
    });
}

这工作正常,但是数据库中的一些数据包含语音标记或单引号,当更改为输入字段时会弄乱输入 html。如何转义每个输入字段的 html?

最佳答案

有几种方法。不太容易出错的方法之一是让 jQuery/DOM 进行转义:

var input = $('<input name="'+key+'">');
input.val(value);
$(this).children(".myNumber").empty().append(input);

关于javascript - JQuery - 用 html 转义替换引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17066042/

相关文章:

javascript - 以另一种数字语言显示折线图垂直轴

javascript - 如何设置 .val() 对输入进行单选检查?

javascript - 如何增加 Android 应用程序 jqMath 方程的字体大小

javascript - jQuery inArray() 函数不适用于动态生成的数组,为什么?

javascript - 导航到 div 而不更改 url

javascript - 如何从客户端获取文本框值并从中创建查询字符串?

javascript - 在 jQuery 中减慢 location.reload()?

jquery - 如何让固定的div动态占据整页

jquery - 延迟加载 VS 无限滚动

javascript - 将方法动态链接到 javascript 函数