jquery - 在 Jquery 中的特定索引处输出 HTML

标签 jquery arrays

我遇到了 jquery 的问题。

我想要对来自输入字段的特定数组索引进行 HTML 输出。

<tr>
<td><input type="text" name="ean[]">
<input type="text" name="serial[]">
</td>
<td class="article[]"></td>
</tr>

$('input[name^="ean"]').change(function(event) {
   var index = $('input[name^="ean"]').index( this );
   $('.article:eq(index)').html("test");
});

目的是,jquery 在输入字段 (ean) 更改后在索引(类文章)上放置特定值。

使用此代码,当前更改的索引处没有输出。

感谢您提前提供的帮助。

最佳答案

使用eq()方法或连接索引值。

$('input[name^="ean"]').change(function(event) {
   var index = $('input[name^="ean"]').index( this );
   $('.article\\[\\]').eq(index).html("test");
});

$('input[name^="ean"]').change(function(event) {
   var index = $('input[name^="ean"]').index( this );
   $('.article\\[\\]:eq(' + index + ')').html("test");
});

尽管缓存 jQuery 对象以供将来使用总是更好。

var $art = $('.article\\[\\]');
var $inp = $('input[name^="ean"]').change(function(event) {
   var index = $inp.index(this);
   $art.eq(index).html("test");
});

仅供引用:类名末尾包含 [],因此您需要将其包含在选择器中,尽管您需要转义两者,因为方括号具有特殊含义。

或者,从类名中删除 [] 并照常使用它,我个人更喜欢这样做。

<tr>
<td><input type="text" name="ean[]">
<input type="text" name="serial[]">
</td>
<td class="article"></td>
</tr>

var $art = $('.article');
var $inp = $('input[name^="ean"]').change(function(event) {
   var index = $inp.index(this);
   $art.eq(index).html("test");
});

关于jquery - 在 Jquery 中的特定索引处输出 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42229497/

相关文章:

javascript - Bootstrap 模态自动在第二个打开模态时添加右边距

php - android - 在 mysql 上使用 foreach 显示数据数组

java - 将数组值从一个类复制到另一个类

javascript - 无法在 JS forEach 中使用变量

javascript - 在带有文本的 div 中查找 div

javascript - modal-body 中的搜索栏,用于根据输入的文本自动搜索

jquery - 在 jQuery UI 对话框中显示隐藏的 html

javascript - 如何对数组进行排序然后获取索引并使用索引移动所有对应的元素?

javascript - 在这种情况下,数组大小在 javascript 中是否重要?

php - jQuery:$.ajax() 不会触发或 PHP 没有响应