jquery中使用html给textarea赋值,再使用val获取时候,html代码就无效了,有什么办法解决

来源:百度知道 编辑:UC知道 时间:2024/06/03 20:37:10
<textarea id="test"></textarea>
使用$("#test").html("<font color=red>a</font>")赋值后在
$("#test").val()获取数值,只能取到a,html代码部分就没了,有什么办法使取得的值仍然为<font color=red>a</font>

首先 textarea是标准是不能设置标签的 如果你真的想设置html

那么建议你用div
设置给div加一个属性 contenteditable="true"
如 <div id="div" contenteditable="true"></div>
然后运行这个网页 你就会发现这个div可以输入东西了 那么你再在里面加上html当然不是问题 对吧 呵呵 现在有很多的编辑框 都不用textarea 都是用div
只不过这个div当中的回车 是<p></p>标签 你在获取这个div.html()时 就要对它进行处理了
如:
var context = $("#div").html();
context=context.replace(/\<\/p\>/,"\n") //将内容的全部</p>替换为\n 也就是换行
context=context.replace(/\<p\>/,"") //将内容的全部<p>去掉
这样就是你想要的结果了 不过如果你在里面加了其它标签 就自己做处理吧

在val括号里面,加入值就行了

$("#test").html()改成$("#test").text()试试

$("#test").html();