0

2 つの数値の加算を実行する関数 myFunction を含むスクリプトを含む単純な ASP ページがあります。

<head runat="server">
    <title></title>

     <script type="text/javascript">
         function myFunction() {
             var x = 10;
             var y = 5;
             x += y;
             var demoP = document.getElementById("demo")
             demoP.innerHTML = "x=" + x;
         }
    </script>

</head>
<body>
    <form id="form1" runat="server">


    <div>


    </div>
    <p>
        &nbsp;</p>
    <p id="demo">
        <asp:Button ID="Button1" runat="server"

            style="z-index: 1; left: 573px; top: 43px; position: absolute; height: 33px; width: 223px;" Text="Button" OnClick="myFunction()" />
    </p>



    </form>
</body> 

このページを実行すると、myFuntion が見つからないというエラーが表示されます。

4

4 に答える 4

5

OnClickサーバー側のコールバック用です。クライアント側の関数を呼び出したい。したがって、OnClientClick代わりに次を使用する必要があります。

OnClientClick="myFunction()"
于 2012-06-14T08:06:05.710 に答える
2
 protected void Page_Load(object sender, EventArgs e)
 {
     Button1.Attributes["onclick"] = "javascript:myFunction();";
 }

コード ビハインド ページで JavaScript 関数を呼び出したい場合は、これを使用します。

于 2012-06-14T09:02:07.833 に答える
0

aspbutton から JavaScript 関数を呼び出すには、ボタンの「onclick」イベントではなく「onclientclick」イベントを使用する必要があります。

これを使ってみてください

OnClientClick="myFunction()"

それ以外の場合は、「アンカー タグ」、「div」、「入力」などの任意の html コントロールの「OnClick」イベントを使用することもできます。例:

<a href= "#" OnClick="myFunction()" > Click to call function</a>
于 2012-06-14T08:23:41.460 に答える
0

JavaScript関数を呼び出したい場合は、これを使用します

<input type="button" id="Button1" value="Button" onclick="myFunction()" />

コントロール<asp:はサーバー側コントロールであり、OnClick イベントはサーバー側メソッドを呼び出します。コード ビハインド ファイルに "myFunction" メソッドが定義されていないため、サーバー側のエラーが発生します。

于 2012-06-14T08:34:56.313 に答える