仅当文本为空时才将文本发送到输入字段

时间:2014-03-06 16:06:34

标签: javascript jquery html forms dynamic

我有一个表单的一部分“弹出”它的正常位置,并将自身绑定到视口的一侧。发生这种情况时,会隐藏某些元素,只留下那些立即关键的数据。

我的问题是,我似乎无法将复制的数据只包含那些具有不包含数据的匹配类的单元格。

我很确定问题在于我的JS:

$('.spec-table-quote-button').click(function() {
    var toCopy = $(this).closest('tr').find('td:eq(1)').text();
    var copyInto = $(".part-number-input").val('');
    $(copyInto).val(toCopy);
    $('.add-field').click();
});

这是一个可以看到所有部分的小提琴:http://jsfiddle.net/UjPAk/

非常感谢任何帮助。非常感谢提前!

3 个答案:

答案 0 :(得分:4)

替换

var copyInto = $(".part-number-input").val('')

var copyInto = $(".part-number-input").filter(function() { return $(this).val() == '' });

.val('')将所有匹配的东西的值设置为空字符串。它不会将匹配列表过滤为值为空字符串的元素。

答案 1 :(得分:2)

使用

var copyInto = $(".part-number-input");
copyInto.val(toCopy);

而不是

var copyInto = $(".part-number-input").val('');
$(copyInto).val(toCopy);

我认为代码是自我解释的。

答案 2 :(得分:0)

尝试:

$('.spec-table-quote-button').click(function() {
    var toCopy = $(this).closest('tr').find('td:eq(1)').text();
    $(".part-number-input").val(toCopy);
    $('.add-field').click();
});