我会直言不讳。我创建了一个textarea元素,我必须返回标签html以及里面的文本。
var elemField = $('<textarea></textarea>');
elemField.val('bla bla this is my textarea text');
//changing some properties
elemField.attr("disabled", "disabled");
elemField.width('95%');
找到了这个解决方案:
var elemFeldCode = elemField.clone().wrap('<p>').parent().html().toString();
输出:
"<textarea disabled="disabled" style="width: 95%;"></textarea>"
期望的输出:
"<textarea disabled="disabled" style="width: 95%;">bla bla this is my textarea text</textarea>"
任何人都可以帮助我以交叉浏览器的方式将此结果抛出jquery ?!
答案 0 :(得分:1)
对于您想要的输出,您必须使用.text()
来设置文本区域的内容,因为.val()
不会影响节点的html。
elemField.text('bla bla this is my textarea text');
答案 1 :(得分:0)
您可以明确添加:
var elemFeldCode = elemField.clone().wrap('<p>').parent().html()
.replace('</',elemField.val()+'</').toString();