2011-12-07 8 views
0

OnClientClick()が2つのテキストフィールドから値を読み込み、サーバーサイドWebMethodに送信するjs関数を起動するASP.NET ImageButtonがあります。 WebMethodを使用して、ストレージを処理する別のエンティティメソッドに送信します。私はサーバ側のWebMethodとストレージメソッドにブレークポイントを設定してデバッグを試みましたが、どちらにも到達していません。私はMozilla Firebugツールを使ってクライアント側でブレークポイントを設定しようとしました。 js関数は呼び出されず、ページはちょうどリフレッシュされます。私は別のjs関数でブレークポイントを設定し、それは完全にトレースされました。どんな助け?OnClientClickがImageButtonのために起動していません

ASP 
<asp:ImageButton input="image" ID="btnSend" ImageUrl="Images/send_button.jpg" 
    runat="server"                
    onclientclick="javascript:handle(); return false"> 
</asp:ImageButton> 


JS 
function handle() { 
     window.$get("#" + "<%= btnSend.ClientID %>").click(
      function() { 
       var txtVC = window.$get("#" + "<%= txtVC.ClientID %>").value(); 
       var txtMsg = window.$get("#" + "<%= tbMgSend.ClientID %>").value(); 

       if (txtVC != "" || txtMsg != "") { 
        window.PageMethods.SendMsg(txtVC, txtMsg, txtMessageResult); 
        return window.$get("#" + "<%= lblMessageStatus.ClientID%>").value("SUCCESS"), 
        alert("SUCCESS"); 
       } 
       else { 
        return alert("Text Message is Empty!"); 
       } 
      }); 
    } 

function txtMsgResult(result) { 
     if (result != '') { 
      window.$("#" + "<%= lblMessageStatus.ClientID %>").innerHTML = result; 
      alert("SUCCESS"); 
     } 
    } 

は、私が試した次 を* OnclientClickと、戻り なし* $とし、連結せずに取得する(+) *の代わりにWebメソッドの方法にサーバー側を変更し、それもなかったの

答えて

0

return falseなしで試しましたか?

<asp:ImageButton input="image" ID="btnSend" ImageUrl="Images/send_button.jpg" 
    runat="server"                
    onclientclick="handle()"> 
</asp:ImageButton> 
0

autoPostBackが原因で動作しない可能性があります。 ImageButtonでそれをオフにする方法があるかどうかはわかりません。代わりにHTMLコントロールを使用してみませんか?

関連する問題