使用JQuery,如何根据另一个名称选择一个元素?

如果我在网络表单中有一堆带编号的字段,比如发票:




使用JQuery,我如何选择第一个,然后从第一个引用第二个?

我有类似于$("input[id^='Item']") ,它可以很好地选择每个项目,但是从这些中我需要引用相应的Desc并用结果填充它。

比如用户在Item1和onBlur中键入内容我想将内容复制到相应的Desc。

谢谢

这可能是一个可能的解决方案:

 $("input[name^=Item]").blur(function() { var n = $(this).attr("name").match(/\d+/); $("input[name=Desc" + n + "]").val($(this).val()); }); 
 $("input[name^=Item]").blur(function() { var reg = new RegExp("/[0-9]+$/") var number = reg.exec($(this).attr("id")); $("input[name=Desc"+number+"]").val($(this).val()); } 

如果我理解你的问题。 我能想到的最简单的方法是在每个项目上放置一个模糊监听器。

 $("input[id^='Item']").blur(function(event){ $(event.target).attr('the attribute you want to change', $(event.target).val()) }) 

这将获取所有输入并添加一个模糊侦听器,它根据值输入更改属性。

变化:

 $("input[name^=Item]").blur(function(){ $($(this).replace(/^[^0-9]+/, 'Desc')).val($(this).val()); });