0

したがって、TextBoxtA と TextBoxtB を含むこの ASP.NET フォームがあります。TextBoxA に特定の入力 (たとえば '000') を入力すると、TextBoxtB のテキスト値が 'TextChanged' に設定され、無効になります。

PS:そして、onClickが発生したときではなく、テキスト di TextBoxA が変更された直後にそれが起こることを望みます。そこで、属性 onTextChanged を使用します。このhttp://forums.asp.net/t/1300979.aspxによると、代わりに onChange を使用し、コード ビハインドの PageLoad の poperty を変更する必要があります。しかし、うまくいかないようです。

だから、私のコードは次のとおりです。

<script runat="server">
    function changeText() {
        var A = document.getElementById('<%=inputTexboxtA.ClientID%>').value;
        var B = document.getElementById('<%=inputTexboxtB.ClientID%>').value;

        if (A = '000') {
            B = 'TextChanged';
        }
    }
</script>

protected void Page_Load(object sender, EventArgs e)
            {
                inputTexboxtA.Attributes.Add("onChange", changeText());
            }

<asp:TextBox ID="inputTexboxtA" runat="server" MaxLength="3"/></td>
<asp:TextBox ID="inputTexboxtB" runat="server" MaxLength="3"/></td>

私はそれを正しくやっていますか?前にありがとう!

4

2 に答える 2

1

基本的にいいえ、あなたはそれを間違っています。OnChangeテキスト ボックスのイベントではありません。ユーザーがフィールドを変更したとき、またはユーザーが他のオプションを入力しているときに、OnBlur を調べOnKeyUpます。両方を使用する可能性があります。

また、 jQueryを調べることもできます

また、構文エラーやその他の問題もあります。比較のために==またはを使用する必要があります。!=また、あなたはそうの値を変更していませんB:

function changeText() {
    var A = document.getElementById('<%=inputTexboxtA.ClientID%>').value;
    var B = document.getElementById('<%=inputTexboxtB.ClientID%>');

    if (A == '000') { // or (A != '000')
        B.value = 'TextChanged';
    }
}

OnBlur の例: http://jsfiddle.net/4HwmU/

更新: ですから、疲れているときにコーディングするべきではありません! OnChange は問題ありませんが、問題はコード内のさまざまなエラーでした

OnChange の例: http://jsfiddle.net/4HwmU/1/

OnBLur と on Change の違いに関する詳細情報: HTML の onBlur と onChange 属性の違いは何ですか?

于 2013-10-11T05:01:07.387 に答える
0
protected void Page_Load(object sender, EventArgs e)
        {
            inputTexboxtA.Attributes.Add("OnKeyUp", changeText());
        }
于 2013-10-11T06:01:55.370 に答える