【问题标题】:Making a rows value to be anothers text with jquery使用 jquery 将行值设为其他文本
【发布时间】:2012-08-10 05:38:14
【问题描述】:

我有一个有 2 行的表,第一个有一个数量的输入,下面的必须输出相同的值。由于我使用的是 jQuery,这是我的代码:

var i, quant;

for (i = 0; i < $(".qnt").length; i++){
    $(".qnt:eq(" + i + ")").keyup(function(){
        quant = $(this).val();  
        console.log($(this));
        console.log(i);
        console.log($(".cst:eq(" + i + ")"));
        $(".cst:eq(" + i + ")").text(quant);
    });
}

行的示例是:

<tr>
     <td><input class="qnt"/></td><td class="cst"></td>
</tr>

jsfiddle 是:http://jsfiddle.net/qrhJ4/

问题:为什么 .cst 选择器不工作,我该如何让它工作?

【问题讨论】:

  • 我认为这很简单。你能放一个jsFiddle吗?

标签: javascript jquery events html-table jquery-selectors


【解决方案1】:

您的事情过于复杂,请尝试以下操作:

$('.qnt').keyup(function() {
    $(this).parent().next('.cst').text(this.value);
});

http://jsfiddle.net/aasqW/

【讨论】:

  • @GiovanniDiToro 如果您查看您的日志,i 将始终相同,因为 JavaScript 关闭。当 keyup 事件触发时,循环已经结束。无论如何,最好使用目标元素作为基础,然后在事件处理程序中从那里遍历。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-02-16
  • 1970-01-01
  • 1970-01-01
  • 2014-11-18
  • 1970-01-01
  • 2015-12-18
  • 2022-08-24
相关资源
最近更新 更多