Jquery 在元素属性中设置时如何正确转义特殊字符

Jquery 在元素属性中设置时如何正确转义特殊字符,jquery,attributes,Jquery,Attributes,我正在从后端获取值并创建一组复选框,其中一个值未正确设置为我的复选框 测试内容如下:“法语(科特迪瓦)” 但在输出中,我得到如下结果: <label><input value="French (Cote d" ivoire)'="" type="checkbox">French (Cote d'Ivoire)</label> 如果我将来知道如何处理这种情况。使用$(元素).attr(属性名,值)修改属性,使用$(元素).text(值)修改文本内容 不要自己操

我正在从后端获取值并创建一组复选框,其中一个值未正确设置为我的复选框

测试内容如下:“法语(科特迪瓦)”

但在输出中,我得到如下结果:

<label><input value="French (Cote d" ivoire)'="" type="checkbox">French (Cote d'Ivoire)</label>
如果我将来知道如何处理这种情况。

使用
$(元素).attr(属性名,值)
修改属性,使用
$(元素).text(值)
修改文本内容


不要自己操纵/连接HTML,因为错误的代码很容易导致安全问题。

在这种情况下,我将对元素进行分组。。如何处理?你能给我演示一下吗。。还是样本?当我这样分组时:col0+=$(“”)。text(name);我得到的结果是“object”-在htmlYour代码中似乎不完整,因此我将演示这个概念:
col0=$('').text(name).prepend($('').val(name))作为旁白:如果您要创建对象的
col0…4
属性而不是局部变量,那么您就可以通过编程方式访问它们,
var cols={col0:'',col1:'',};cols['col'+i%5]
您可以删除那个大条件,只需在一次调用中处理所有内容。或者,如果它们是全局变量,您可以使用
窗口['col'+i%5]
实现相同的效果。是的,您是正确的。谢谢
$.map(data["allLocales"], function(value, i){

                var name = value.name;
                    name.replace("'", "&quot;") even i tried name.replace("'", "\'") - no luck

                if(i % 5 === 0 ){
                    col0 += "<label><input value='"+ name +"' type='checkbox' />"+name+"</label>"
                }else if(i % 5 === 1){
                    col1 += "<label><input value='"+ name +"' type='checkbox' />"+name+"</label>"
                }else if(i % 5 === 2){
                    col2 += "<label><input value='"+ name +"' type='checkbox' />"+name+"</label>"
                }else if(i % 5 === 3){
                    col3 += "<label><input value='"+ name +"' type='checkbox' />"+name+"</label>"
                }else if(i % 5 === 4){
                    col4 += "<label><input value='"+ name +"' type='checkbox' />"+name+"</label>"
                }

            })
$, &,%