在default.aspx我有:
<form id="form1" runat="server">
<div>
<asp:Button ID="clikme" runat="server" Text="click me" />
</div>
</form>
在default.aspx我有:
clikme.Attributes.Add("OnClick", "javaScript: return myfunction();");
在JScript1.js中我有
function myFunction() {
alert('this is my function');
return false;
}
上面的代码不起作用它显示'Microsoft JScript运行时错误:对象预期'。我无法弄清楚如何找到解决方案。
答案 0 :(得分:1)
你是错误名称的调用函数myfunction()应该是myFunction(),因为javascript是区分大小写的。还要确保在当前的aspx文件中包含JScript1.js
。您可以阅读此MSDN artile以了解如何包含js文件。
clikme.Attributes.Add("OnClick", "javaScript: return myFunction();");
包含js文件
<script type="text/javascript" src="yourDirectorIfAny/JScript1.js" ></script>
答案 1 :(得分:0)
试试这个 添加
脚本类型='text / javascript'language =“javascript”到您的js部分并将您的功能放在其中..
答案 2 :(得分:0)
试
clikme.Attributes.Add("OnClientClick", "javaScript: return myFunction();");
答案 3 :(得分:0)
最好的方法是按照Adil的建议在Aspx页面上提供javascript文件的参考。如果你想在代码中注册一些javascript方法,那么你可以看看这个例子。
http://msdn.microsoft.com/en-us/library/system.web.ui.page.registerclientscriptblock.aspx
答案 4 :(得分:0)
JScript是CASE SENSITIVE语言。
clikme.Attributes.Add("OnClick", "javaScript: return myfunction();");
function myFunction() {
...
}
检查上面的行。 myFunction函数必须相等。
答案 5 :(得分:0)
Something like below will helpfull..
string script = "myFunction();";
AjaxControlToolkit.ToolkitScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alert", script, true);