2017-01-19 2 views
0

私は2つのフィールドを持っていますが、どちらか一方しか書き込めない場合は、以下のjavascriptを使用してクライアントサイドを検証します。私が持っている問題は、デフォルトでテキストボックスには、使用時にJavaScriptが無効になっているフィールドの1つを残していることを明示する「x」があるということです。テキストボックスからjavascriptを呼び出すclear 'x' event

両方のフィールドを有効にするために、ユーザーがテキストボックスの「x」を消去するとjavascript関数を呼び出すにはどうすればよいですか?

enter image description here

<asp:TextBox ID="txtFIELD1Val" runat="server" onKeyup="javascript:clearFields();" TabIndex="1" CssClass="cssTextbox"></asp:TextBox> 

<asp:TextBox ID="txtFIELD2Val" runat="server" onKeyup="javascript:clearFields();" TabIndex="2" CssClass="cssTextbox"></asp:TextBox> 

    function clearFields() { 
     var txtFIELD1 = document.getElementById('<%= txtFIELD1Val.ClientID %>'); 
     var txtFIELD2 = document.getElementById('<%= txtFIELD2Val.ClientID %>'); 

     //Enable/Disable FIELD1 and FIELD2 fields based on text. 
     if (txtFIELD1.value == "" && txtFIELD2.value == "") { 
      txtFIELD1.disabled = false; 
      txtFIELD2.disabled = false; 
     } 
     else if (txtFIELD1.value == "" || txtFIELD2.value != "") { 
      txtFIELD1.disabled = true; 
      txtFIELD2.disabled = false; 
     } 
     else if (txtFIELD1.value != "" || txtFIELD2.value == "") { 
      txtFIELD1.disabled = false; 
      txtFIELD2.disabled = true; 
     } 
    } 

答えて

1

Remove IE10's "clear field" X button on certain inputs?

秒の回答を参照してください、「X」とそれが引き起こしている問題を取り払うことに最善のアプローチであると思われます。

+0

問題は、ユーザーコミュニティが明確な「x」をフィーチャーとして参照し、フィーチャーを削除することは、要求され通信されない限り許可されないということです。私は問題について議論したが、この時点ではボタンを外すことはできなかった。 –

+0

「ネイティブ」クリアボタンを削除して、すべてのブラウザで同じように動作する独自のクリアボタンを追加できますか? –

+0

ええ、その可能性が私はその1つを得ることができます。この問題に対処するのは簡単な方法だと私は同意する。私は回避策を探すのではなく、問題を解決しようとしている。私はその提案をします。ありがとう! –

関連する問題