我是否有办法阻止用户在<br>
或其他任何html标记中使用textbox
等HTML标记显示为文字:
<form method="POST">
<textarea id="note" placeholder="Type your notes here"></textarea>
<input type="button" value="Save Note" />
</form>
答案 0 :(得分:0)
删除他们可能使用的任何html标签:
var myString = document.getElementById('note');
var stringStripped = myString.replace(/<(?:.|\n)*?>/gm, '');
或使用jQuery的第一行,如果您愿意:
var myString = $('#note');
答案 1 :(得分:0)
您可以做的是编写一些在表单提交时调用的JavaScript,如果其中一个字段包含类似XML的内容,则会阻止它。您可以使用适当的Regex进行检查。
但您确实理解,这实际上并不能阻止攻击者通过这些字段或禁用JavaScript的浏览器发送HTML。要处理这种情况,您的保护应该是服务器端,您需要针对相同的正则表达式运行字段以验证它们不包含HTML并拒绝表单提交。