使用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()); });