Javascript 在div和XSS中设置用户文本
我有一个文本框,用户在其中键入他的电子邮件地址。 当他点击“空格”键时,我用这个文本创建了一个新的div 问题是用户可以键入:Javascript 在div和XSS中设置用户文本,javascript,jquery,xss,Javascript,Jquery,Xss,我有一个文本框,用户在其中键入他的电子邮件地址。 当他点击“空格”键时,我用这个文本创建了一个新的div 问题是用户可以键入:alert(1)
alert(1)例如,如果我使用$('#textbox').val()
脚本正在运行
所以我尝试使用jquery.html()
并给出编码字符串,但在chrome、firefox和旧版本的IE中不起作用
如何阻止脚本运行并将用户值设置为div?如果要转义输入中的标记,请使用jquery.text()
var t = $('#textbox').val();
$('#div1').text(t);
使用jQuery的.text方法将只返回没有HTML标记的文本
$("#textbox").text();
只要不将其保存在数据库中并与其他访问者共享,XSS就没有问题。使用.text
:@abhitalks Arh-我应该学会单击自己的链接。我尝试过,但得到的值为空。只有$('#textbox').val()返回用户的值。var t=$('#textbox').val()$(#div1')。文本(t);谢谢我动态创建了div:$('#recipients_area_input')。在(''+value+'')之前;所以我改变了它,在创建之后添加了值,现在就可以工作了。谢谢