我试图用ASP.NET AJAX调用Web服务。但是我遇到了以下错误。 编译器错误消息:CS1061:'ASP.index_aspx'不包含'onClick'的定义,并且没有扩展方法'onClick'接受类型'ASP.index_aspx'的第一个参数可以找到(你是否缺少using指令或者装配参考?)
任何人都知道如何解决这个问题?
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services><asp:ServiceReference Path="~/CountryCodeFinder.asmx" /></Services>
</asp:ScriptManager>
<script language="javascript" type="text/javascript">
function onClick() {
Task3.CountryCodeFinder.CodeFinder(form1.tbxInput.value, onSuccess, onFailed);
}
var onSuccess = function (result) {
$get("lblResult").innerHTML = result;
}
var onFailed = function (result) {
$get("lblResult").innerHTML = " Not Found! ";
}
</script>
<div>
<asp:TextBox ID="tbxInput" runat="server"></asp:TextBox>
<asp:Button ID="btnSubmit" runat="server" Text="Find Country Code" onclick="onClick()" />
<br />
答案 0 :(得分:4)
ASP.NET按钮的onclick在后面的代码中查找一个方法(在服务器上运行),在你的情况下命名为'onClick',它无法找到,这就是你得到编译的原因错误。
您可能想使用onClientClick运行javascript(msdn:http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.onclientclick.aspx)
如果你不打算对服务器端的按钮做任何事情,你可能想用一个简单的html输入标签替换它:
<input type='button' onclick='onClick()' value='Find country code'></input>