以下是尝试在页面中包含脚本的 3 个版本:
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "JqueryTestFile1",
"<script type=\"text/javascript\" src=\"jqueryTEST1.js\"></script>", false);
Page.ClientScript.RegisterClientScriptInclude(this.GetType(), "JqueryTestFile2",
"jquery-1.11.0.min.js");
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "JqueryTestFile3",
"src=\"jqueryTEST3.js\"", true);
前两个版本运行良好。然而,"true"作为最后一个参数的第三个参数实际上是<![CDATA[在源代码中呈现的,我无法让它工作。
为什么要渲染 CData ?在这种情况下,它的目的是什么?如何在不删除“true”参数的情况下让第三个版本正常工作?下面是在浏览器中呈现的 html 代码::
<form method="post" action="ScriptsManager.aspx" id="Form1">
<script type="text/javascript" src="jqueryTEST1.js"></script>
<script src="jquery-1.11.0.min.js" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
src="jqueryTEST3.js"//]]>
</script>
<input type="button" value="ClickMe" onclick="DoClick()" />
</form>
附加信息::
[ 只是为了避免混淆所有这些 JS 文件:JqueryTest1.js等等 .. 都存在于我的解决方案中的适当位置]。在JqueryTest3.js中,只有以下代码:
function DoClick(){
alert("Hi");
}
如果我将此DoClick()功能放在JqueryTest1.js文件中,它会完美运行。
.aspx标记:
<form id="Form1" runat="server">
<input type="button" value="ClickMe" onclick="DoClick()" />
</form>