javascript - Jquery next() 不起作用

标签 javascript jquery

我有

<table class="prodtable">
<tr>
 <td></td>
 <td>
     <input class="editok" value="2" />
 </td>
 <td>
  <input name="prodnumber" value="1" />
  <i></i>
 </td>
</tr>
</table>

还有这个js

$('.prodtable').on('blur','.editok',function(){
   var neuanzahl = $(this).val();
   $(this).parent('td').text(neuanzahl);//<-- till here works fine
   $(this).parent('td').next().find('input').val(neuanzahl);//<-- from here, failure
   $(this).parent('td').next().find('i').addClass('icon-pencil'); 
});

editok输入是动态插入的,这就是我从父表设置处理程序的原因。

我的问题是,在模糊事件中,给定输入的值应该放入下一个输入中,该输入位于下一个 td 内。姓名 prodnumger<i>应该得到类(class) icon-pencil

我现在已经尝试了 1 个小时,真遗憾……没有一次成功。我在这里做错了什么?

最佳答案

这一行

$(this).parent('td').text(neuanzahl);

替换 TD 中的所有内容,就像 text() 所做的那样,它会覆盖所有内容,因此当您这样做时在下一行

$(this).parent('td').next().find('input') ...

没有this,你只是用text()删除了它

仅链接而不是使用多行将保留引用

$('.prodtable').on('blur','.editok',function(){
   var neuanzahl = this.value;

   $(this).parent('td')
          .text(neuanzahl)
          .next('td')
          .find('input')
          .val(neuanzahl)
          .next('i')
          .addClass('icon-pencil'); 
});

FIDDLE

关于javascript - Jquery next() 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25161528/

相关文章:

javascript - 在父级 HTML 字符串之间的特定点附加 DOM 元素

jquery - 如何确保 jQuery 在异步加载时可用

javascript - 关于更改表值的 jQuery

javascript - 如何为 ion.rangeSlider 设置默认值

javascript - Stripe webhooks 事件顺序

javascript - 即使禁用,Tablesorter 在编辑行项目时也会更改行位置

javascript - 时区和 DateTimeField - Django

javascript - MSAL 所有租户都通过弹出窗口内的弹出重定向进行登录

javascript - 遍历 Sprite 并保存背景位置

javascript - 在 backbone js 中使用相同的集合从不同的 url 获取数据