You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

jQuery如何访问input数组中用户当前输入的特定元素获取商品编码

问题原因

你当前的代码在keyup事件回调中遍历了所有name="product_code[]"的输入框取值,因此会返回全部输入框的值,无法定位到当前正在输入的目标元素。

解决方法

要获取当前触发输入事件的输入框值,直接使用回调函数中的this对象即可,它指向触发本次keyup事件的对应输入框:

$('[name="product_code[]"]').keyup(function() {
    // 获取当前输入框的商品编码值
    const currentProductCode = $(this).val();
    alert(currentProductCode);
    // 此处可添加请求逻辑,用currentProductCode查询数据库后填充对应商品描述
});

扩展适配(动态新增商品行场景)

如果你的发票系统支持动态添加多行商品,上述直接绑定事件的写法对新增的输入框不会生效,建议改用事件委托的写法,绑定到页面中不会被动态销毁的父级容器上(比如包裹输入框的表格):

// 把#invoice_table替换为你实际的父容器选择器
$('#invoice_table').on('keyup', '[name="product_code[]"]', function() {
    const currentProductCode = $(this).val();
    // 示例:找到当前输入框所在行的商品描述字段赋值,可根据实际DOM结构调整
    const currentRow = $(this).closest('tr');
    // 模拟查询后赋值逻辑
    // $.ajax({
    //     url: '你的商品查询接口地址',
    //     data: { code: currentProductCode },
    //     success: res => {
    //         currentRow.find('[name="product_desc[]"]').val(res.desc);
    //     }
    // })
});

内容的提问来源于stack exchange,提问作者Lef

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 12:54:04