让文本框识别来自按钮的复制输入

时间:2014-08-26 14:57:09

标签: javascript jquery

我在这方面很新,我试图搜索,找不到答案。

我有几个按钮,它们分配了一个值,当我点击它们时,它会将文本复制到另一个文本框中,并在其下方有一个提交按钮。

我无法让文本框识别出值已输入文本框,因此启用了提交按钮。

我的样本:

$("#buttonToCopy").click(function () {
    $('#textBox').val("Value").html();
});

$('#textBox').on('input', function () {
    if ($(this).val().length>0);
        $('#submitBtn').removeAttr('disabled');
        $('#submitBtn').removeClass('disabled');
    });

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

可以在this StackOverflow question中读取,jQuery在使用.val()方法时不会触发事件。这意味着你的代码

$("#buttonToCopy").click(function () {
    $('#textBox').val("Value").html();
});

不会触发“输入”或“更改”事件。您可以自己触发事件:

$("#buttonToCopy").click(function () {
    $('#textBox').val("Value").html();
    $('#textBox').trigger('input');
});

或者,您也可以轻松调用该函数来禁用buttonToCopy中的按钮:

$("#buttonToCopy").click(function () {
    $('#textBox').val("Value").html();
    EnableSubmitButton()
});

$('#textBox').on('input', function () {
    EnableSubmitButton()
});

function EnableSubmitButton(){
   if ($(this).val().length>0) {
      $('#submitBtn').removeAttr('disabled');
      $('#submitBtn').removeClass('disabled');
   }
}