Enr*_*que 4 javascript php validation xhtml jquery
我的php网站上有一些JavaScript代码.
此代码使用jQuery,并使用ajax调用构建<select>菜单.
这是代码
sel.append('<option value="' + data[i].id + '">' + data[i].nombre + '</option>');
Run Code Online (Sandbox Code Playgroud)
这给了我以下警告
第240行第82栏 - 警告:此处不允许使用'<'+'/'+字母
有谁知道如何修复此警告,所以我的HTML验证?谢谢
bob*_*nce 10
问题在于任何</序列(称为ETAGO)都会结束CDATA元素,例如a <script>.您可以</在浏览器中使用,但不能</script.
最简单的解决方法是</使用反斜杠转义来分解序列:
sel.append('<option value="' + data[i].id + '">' + data[i].nombre + '<\/option>');
Run Code Online (Sandbox Code Playgroud)
但是这行仍有问题,因为你不是HTML转义你的id和nombre值.如果它们可能包含<,&或者"您刚刚建立了自己的客户端XSS漏洞!
因此,在将文本值放入字符串之前,要么HTML转义文本值,要么更简单,只需使用标准DOM:
sel.append(new Option(data [i] .nombre,data [i] .id));
| 归档时间: |
|
| 查看次数: |
1494 次 |
| 最近记录: |