我有一组8个表格,如下所示。所有类名相同,表单名相同。但是我将提供的输入在所有表格上都会有所不同。当我点击过滤器按钮时,我需要从文本框中获取输入值。如何使用$(this).
在jquery中执行此操作?
这是我尝试过的。
$(".filterit").click(function(){
$(this).$('myform').$('filter1').val();
});
HTML
<form name="myform" method="post">
<table class="pop-table">
<tr><td><input type="text" value="" name="filter1" class="filter-1"><td></tr>
<tr><td><input type="text" value="" name="filter2" class="filter-2"></td></tr>
<tr><td><button class="btn btn-warning filterit">FILTER</button></td></tr></table>
</form>
答案 0 :(得分:2)
使用.closest()
遍历最近的元素,使用.find()
搜索元素类或ID或选择器,使用.val()
获取输入值
$(".filterit").click(function(){
$(this).closest('table').find('.filter-1').val(); // for first text box
$(this).closest('table').find('.filter-2').val(); // for second
});
答案 1 :(得分:0)
你需要:
1)遍历到最近的表元素
2)并且其中包含选择器.filter-1
的find元素
$(".filterit").click(function () {
var inp1val = $(this).closest('table').find('.filter-1').val();
});
答案 2 :(得分:0)
$("#filter_btn").click(function(){
$(this).parent().parent().find("#filter2").val();
});
&#13;
<form name="myform" method="post">
<table class="pop-table">
<tr><td><input type="text" value="" id="filter1" name="filter1" class="filter-1"><td></tr>
<tr><td><input type="text" value="" id="filter2" name="filter2" class="filter-2"></td></tr>
<tr><td><button id="filter_btn" class="btn btn-warning filterit">FILTER</button></td></tr></table>
</form>
&#13;
答案 3 :(得分:-1)
按钮类型=&#34;提交&#34;
那么你的活动应该是
$(".filterit").submit(function(){
//this keyword is now the form that was submitted
});
希望这有帮助!