将HTML模板传递给Coldfusion。模板的head标签具有其他属性:
<head profile="http://abc.com">
问题在于,当基于此模板生成输出时,Coldfusion将其脚本注入head标记内:
<head <script type="text/javascript" src="/CFIDE/scripts/cfform.js"></script>
<script type="text/javascript" src="/CFIDE/scripts/masks.js"></script>
profile="http://abc.com">
这会导致profile="http://abc.com">
出现在页面顶部并阻止页面验证。
仅在存在表单标记时才会进行代码注入。如果head标签没有任何属性,则不会发生错误的位置注入。属性的存在是项目要求,不能省略。
是否可以阻止Coldfusion注入脚本?
答案 0 :(得分:5)
脚本注入仅适用于cfforms,而不适用于标准格式。如果您没有使用任何cfform的增强功能,您只需切换到标准表单即可。
我检查了累积修补程序列表,但没有看到修复此问题。
答案 1 :(得分:2)
我的解决方案:将元标记放在
之后<html>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<head>
当CF创建页面时,它会将标记放在标记下面但标记上方
<!DOCTYPE html>
<html class=" ext-strict">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<script type="text/javascript">/* <![CDATA[ */_cf_loadingtexthtml="<img alt=' ' src='/CFIDE/scripts/ajax/resources/cf/images/loading.gif'/>";
_cf_contextpath="";
_cf_ajaxscriptsrc="/CFIDE/scripts/ajax";
_cf_jsonprefix='//';
_cf_clientid='9851DA49BD375D9722A9D6B1951976AC';/* ]]> */</script><<script type="text/javascript" src="/CFIDE/scripts/ajax/yui/yahoo-dom-event/yahoo-dom-event.js"></script>