我有一个javascript链接,我需要在aspx页面的表格中显示。将其硬编码为文字是不正常的。咨询脚本的提供者建议我不应该硬编码,但应该使用ScriptManager嵌入它。如何将链接作为javascript进入我页面中的适当位置(它在表格中)?我有这段代码来注册脚本:
string myScript = "http://forms.aweber.com/form/85/1556724385.js";
ClientScript.RegisterClientScriptBlock(this.GetType(), "MyScript", myScript);
我希望此链接显示在此表格单元格中:
<asp:TableRow ID="TableRow3" runat="server">
<asp:TableCell ID="TableCell4" runat="server" HorizontalAlign="Center">
</asp:TableCell>
</asp:TableRow>
不清楚如何做到这一点...插入单元格内的某些控件,例如面板?我不清楚如何“发射”剧本。
已编辑添加:
与供应商沟通后,很明显,尝试在ASP.NET页面中尝试执行的操作将无法正常工作 - 至少对于当前版本的产品。所以我接受了@ cccason的回答,因为如果情况不同,它最接近答案。
答案 0 :(得分:2)
RegisterClientScriptBlock方法只是将指定的javascript块(文字)添加到页面。要包含任何内部或外部JavaScript文件,您应该使用RegisterClientScriptInclude方法。
答案 1 :(得分:1)
所以,我建议只删除它而不是使用RegisterClientScriptBlock,如果你需要它除了表单标记的开头。
RegisterClientScriptBlock方法将JavaScript直接放在页面中的opening元素之后。
所以我会做这样的事情:
<asp:TableRow ID="TableRow3" runat="server">
<asp:TableCell ID="TableCell4" runat="server" HorizontalAlign="Center">
<script type="text/javascript" src="http://forms.aweber.com/form/85/1556724385.js"></script>
</asp:TableCell>
</asp:TableRow>
因此,脚本中发生的是它将一些DOM元素写入您的页面。由于您使用的是webforms,因此所有这些都位于标记内。他们写到你的页面的东西是另一个。因此,您最终会得到表单中的表单。然后,当您提交信息时,它应该回发到http://www.aweber.com/scripts/addlead.pl。
您应该检查正在发送的请求并查看其尝试执行的操作。你可以使用firefoxes firebug,fiddler或chrome的工具(f12)。