按钮无法从javascript激活oncl​​ick功能

时间:2013-08-24 11:20:18

标签: c# asp.net ajax web-services

我试图用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>
&nbsp;&nbsp;
        <asp:Button ID="btnSubmit" runat="server" Text="Find Country Code" onclick="onClick()" />
        <br />

1 个答案:

答案 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>