2012-03-27 9 views
0

送信ボタンがクリックされたときにButton1をクリックします。ここでプロパティ 'click'の値を取得できません:オブジェクトがnullまたは未定義

は、関連するコードです:

Microsoft JScript runtime error: Unable to get value of the property 'click': object is null or undefined

誰もが問題が何であるかについてどのような考えを持っています:

<input id="Submit1" type="submit" value="Search" onclick="javascript:check_user()" /> 
<script type="text/javascript"> 
      function check_user() { 
       document.getElementById('<%=Button1.ClientID%>').click(); 
      } 
</script> 
<asp:Button id="Button1" runat="server" Visible="false" OnClick="Button1_Click"/> 

そして、ここでは、私が手にエラーがありますか?私はそれを解決しようとしている私の髪を引き裂いています。あなたはJavaスクリプトに限定されるものではない場合

+0

なぜ、クライアント側の2つのボタンをクリックする必要がありますか?なぜ、サーバー側で関連コードを実行するだけではないのですか?フォームをサードパーティの場所に投稿していて、サーバー上でコードを実行しようとしていますか? – mellamokb

+0

入力のonclickをC#のメソッドにする方法を教えてもらえれば、感謝しています(試してみると決してそのメソッドを見つけることができないようです)。そうでなければ、これを行うと思う唯一の方法でした。 –

+0

私の掲載答えを見てください。 – mellamokb

答えて

1

のようにjqueryのからのトリガを使用して試すことができますか?

<asp:Button id="Button1" runat="server" Text="Search" OnClick="Button1_Click"/> 

サーバーサイドコード:

protected void Button1_Click(object sender, EventArgs e) { 
    // processing code here 
} 
+0

私は、入力のonclickで起こる必要があるので、テキストボックスと入力を使用して私のGridViewをフィルタリングしています。ボタンは、C#メソッドを呼び出すための私の方法でした。 –

+0

*は 'input'タグに*していますか? 'asp:Button'の何が問題なの?それは本質的にまったく同じことをするでしょう。 – mellamokb

+0

非常に良い点。 xD私はそれも動作すると思います。 –

1

あなたはただ一つのボタンでそれを行うことはできません。この

<script type="text/javascript"> 
      function check_user() { 
      $("#<%=Button1.ClientID%>").trigger('click'); 
     //or 

$("#<%=Button1.ClientID%>").click(); 

      } 
</script> 
+0

残念ながら、jqueryを認識していないようです。セットアップは簡単ですか? –

+0

はい、単にそれを含めるだけです。 MicrosoftのCDNからも入手できます。 – ThiefMaster

+0

甘い - それは壊れていませんでしたが、ボタンのOnClickメソッドを呼び出すことに終わっていませんでした。 –

0

あなたはボタンが見えないようにと、asp.netは、HTMLでボタンコントロールをレンダリングされていません。 (HTMLソースを確認できます)。スタイルを作成してクライアント側でレンダリングしたasp.netボタンにスタイルを適用して、非表示にすることができます。

.MyHiddenButtonStyle{display:none;}// add this in the header in styles 

<input id="Submit1" type="button" name="search" value="Search" onclick="javascript:check_user()" /> 
<asp:Button id="Button1" runat="server" CssClass="MyHiddenButtonStyle" OnClick="Button1_Click"/> 

function check_user() { 
     document.getElementById('<%=Button1.ClientID%>').click(); 
    } 

さらにもう1つは、[送信]ボタンを通常のボタンとして作ったことです。とにかく、あなたはjavascriptを使ってポストバックイベントを起こしています。

関連する問題