我有一个包含多个div的页面,看起来像下面的示例。 每个div包含一个字段,一个隐藏字段和一个按钮。
如何通过点击(可见)输入字段被触发的按钮来实现这一目标? 我需要触发一次点击或焦点,因为它们都会触发相同的功能。
相关的每个按钮都有class="triggerBtn"
,相应的输入字段包含class="inputField"
。
示例div:
<div>
<input type="text" class="inputField" id="field1" name="field1" />
<input type="hidden" name="field1" />
<button type="button" class="btn btn-primary triggerBtn">Find</button>
</div>
答案 0 :(得分:11)
我想你想要:
$(".triggerBtn").click(function () {
$(this).closest('div').find('.inputField').focus();
});
答案 1 :(得分:5)
添加 Onclick =“function()”see here 如果你需要使用jquery手动触发它,你可以通过
来实现$("#field1").trigger("click");
答案 2 :(得分:1)
$(".triggerBtn").on("click",function(e){
$(this).closest("div").find(".inputField").click();
//or $(this).closest("div").find(".inputField").focus();
});
答案 3 :(得分:0)
$(".triggerBtn").parent().children("input[type:text]").first().focus()
答案 4 :(得分:-1)
更新了Jsfiddle:http://jsfiddle.net/ZmL4y/3/
$(document).on("click",".triggerBtn", function() {
var inputField = $(this).closest('div').find('.inputField');
if($(inputField).is(":visible"))
{
$(inputField ).focus();
}
});