0

フォームに 3 つのテキスト ボックスがあります。デフォルトの動作では、最初のテキスト ボックスが有効になっていますが、他の 2 つのテキスト ボックスは無効になっています。最初のテキスト ボックスに入力を開始するか、最初のテキスト ボックスにテキストがコピーされたらすぐに、2 番目のテキスト ボックスを有効にしたいと考えています。フォームに以下のコードがありますが、前にテキスト ボックスに入力を開始すると、次のテキスト ボックスを有効にするのに役立ちます。コンテンツをコピーして貼り付けると、役に立ちません/応答しません。親切に助けて...

function EnableCopyUsageField(currentField)
{   
   var txtOldItem2 = $get('<%=txtOldItem2.ClientID%>');
   var txtOldItem3 = $get('<%=txtOldItem3.ClientID%>');

   if(currentField == "txtOldItem1")
   {
    txtOldItem2.disabled = false;
    txtOldItem2.style.backgroundColor ='White';
   }

    if(currentField == "txtOldItem2")
    {
    txtOldItem3.disabled = false;
    txtOldItem3.style.backgroundColor ='White';   
    }
}

別のテキストボックスの内容が変更されたときに 1 つのテキストボックスを有効にする

4

2 に答える 2

0

Uは、テキストボックスのonkeydownイベントとonchangeイベントの両方で関数を呼び出すことができます。基本的には、コピーした場合でも、onkeydown/onkeyupのみを変更する必要があります。

<input type="text" onkeydown="EnableCopyUsageField()" onchange="EnableCopyUsageField()" />
于 2013-02-20T03:23:11.320 に答える
0

コピーして貼り付けるために、このコードは私の問題を解決しました

function EnableFieldOnPaste()
 function EnableFieldOnPaste()
  {
       var txtOldItem1 = $get('<%=txtOldItem1.ClientID%>');
       var txtOldItem2 = $get('<%=txtOldItem2.ClientID%>');

        txtOldItem1.onpaste = function() 
       {
            EnableCopyUsageField("txtOldItem1");
       };

       txtOldItem2.onpaste = function() 
       {
          EnableCopyUsageField("txtOldItem2");
        };    

}

于 2013-02-20T19:20:40.387 に答える