0

我在一个表单上有三个文本框,默认行为是第一个文本框已启用,但其他两个未启用。一旦我开始在第一个文本框中输入内容或将某些文本复制到第一个文本框中,我想启用第二个文本框。我的表单上有下面的代码,但它只有助于在我之前开始输入文本框时启用下一个文本框。当我复制并粘贴内容时,它没有帮助/响应。请帮助...

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';   
    }
}

当另一个文本框的内容发生变化时启用一个文本框

4

2 回答 2

0

你可以在文本框的 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 回答