我正在尝试使用jQuery将变量设置为输入值,然后使用该值附加新输入。问题是该值包含双引号,因此它会混淆输出。
例如:
<input value="a:1:{s:7:"form";a:5" />
<div class="test"></div>
jQuery的:
$('.test').append('<input type="radio" value="'+ value +'"/>');
输出:
<div class="test"><input value="a:1:{s:7:" form";a:5" type="radio"></div>
答案 0 :(得分:1)
问题是,您使用"
作为分隔符会导致value
属性,并且该字符也在您放置的值中。因此,那些嵌入的引号正在结束属性。
使用对象语法创建元素,而不是通过连接字符串,然后您不必处理这些语法细节。
$('.test').append($('<input>', {
value: value
}));
您还可以使用.val()
功能设置输入值:
$('.test').append($('<input>').val(value));