我有一个名为 search
的函数,它是通过单击的 div 或提交的表单来调用的。
当单击 div 时,它的 id
将通过 AJAX 调用作为数据发送。但是我想要做的是,如果提交了表单,则通过 AJAX 调用发送输入的数据。
我想过有两个函数和AJAX调用,但我觉得这是不必要的,必须有一个简单的解决方案。
<div id="12" class="question"></div>
<div id="24" class="question"></div>
<div id="11" class="question"></div>
<form id="question" method="post">
<input type="text" name="enter" id="enter">
<input type="submit">
</form>
<script>
$(".question").click(search);
$("form#question").submit(search);
function search() {
$.ajax({
type: "POST",
url: "sending.php",
data: "example=" + this.id,
success: function(data) {
console.log(data);
}
});
}
</script>
最佳答案
您可以使用is
函数检查您点击的内容:
var isDiv = $( this ).is( "div" );
// or
// var isForm = $( this ).is( "form" );
然后决定发送什么内容:
data: isDiv ? ("example=" + this.id) : $( this ).serialize(),
简化:
data: $( this ).is( "div" ) ? ("example=" + this.id) : $( this ).serialize(),
关于javascript - 根据是否提交表单或单击 div,通过 AJAX 调用发送不同的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44863306/