我有5个输入attr search
。
当用户在任何输入中键入内容时,我在数据库中搜索请求的值。 但在搜索之前,我想清除除正在编辑的所有其他搜索字段。
这就是我所拥有的:
$(document).on('input', 'input[search]', function(){
var searchValue = $(this).val();
//Now I want to clear all other input[search] fields, except $(this)
});
应该很简单,但无法弄清楚。
答案 0 :(得分:2)
使用 not()
方法过滤出选择器中的任何元素。
$(document).on('input', 'input[search]', function(){
var searchValue = $(this).val();
// avoid current element where `this` referst to current element
$('input[search]').not(this).val('');
});
$(document).on('input', 'input[search]', function() {
var searchValue = $(this).val();
// avoid current element where `this` referst to current element
$('input[search]').not(this).val('');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input search/>
<input search/>
<input search/>
<input search/>
<input search/>
<input search/>
<input search/>
答案 1 :(得分:2)
试试这个:
$(document).ready(function(){
$("input[type=search]").on("input",function(){
$("input[type=search]").not(this).val('');
})
})
最终代码:
<html>
<title>This is test</title>
<head>
</head>
<body>
Search 1 : <input type="search">
<br><br>
Search 2 : <input type="search">
<br><br>
Search 3 : <input type="search">
<br><br>
Search 4 : <input type="search">
<br><br>
Search 5 : <input type="search">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("input[type=search]").on("input",function(){
$("input[type=search]").not(this).val('');
})
})
</script>
</body>
</html>
&#13;