2017-09-24 19 views
0

JavaScriptが空でない場合、クライアントサイドでAsp.netテキストボックスを無効にしたいと思います。JavaScriptを使用してクライアント側でasp.netコントロールを無効にする方法

空チェックとテキストボックスを無効にするために、次の関数を使用しています。

<script>  
    function check(textBox) { 
    if (textBox.innerText = (field.value === "")) { 
     textBox.disabled = true; 
    } 
    }  
</script> 

と私はpageload

ASPxTextBox1.Attributes.Add("onchange", "check(this);"); 

と次に使用される次のコードは、私のASPXです。

<dx:ASPxTextBox ID="ASPxTextBox1" runat="server" Height="35px" Width="44px"> 
      <ClientSideEvents TextChanged="function check(textBox)" /> 
    </dx:ASPxTextBox> 

私にとっては機能しません。私は何が問題なのか分からない。
これを実現する方法はありますか?

注:私はDevExpress ASPxTextBoxコントロールを使用しています。

+0

変更TextChanged = "TextChanged ="関数チェック(this) "への関数チェック(テキストボックス) –

+0

@HamedJavaheriはまだ私のために働いていません – Amr

答えて

0

全体の機能は以下のようになります。

<script type="text/javascript"> 

    function OnTextChangedHandler(s) { 
     alert('TextChanged. Text = ' + s.GetText()); 

     s.SetEnabled(false); 
    } 
</script> 

あなたのhtmlは次のとおりです。

<dx:ASPxTextBox ID="ASPxTextBox1" ClientInstanceName="txtReceiver" runat="server" Height="35px" Width="44px"> 
    <ClientSideEvents 
     TextChanged="function(s, e) { 
      OnTextChangedHandler(s); 
     }" /> 
</dx:ASPxTextBox> 

これは、それらのドキュメントs.SetEnabled(false);によれば、このコードは制御を無効にするために使用することができるASPxTextBoxあるので。 s.GetText()は、コントロールからテキスト値を取得するために使用できます。 詳細については、linkをご確認ください。

+0

ええ、あなたは' check() 'としてこの関数を呼び出すことができます。 –

+0

私は言ったように私はそれをしたが、まだテキストがあってもテキストボックスの内容を編集することができます:/ – Amr

+0

関数内の行は実行されていますか? ( 'some message ');'のようにalertを使用してください。 –

関連する問題