仅使用AJAX提交一个表单

我的html视图中有多个表单(由php foreach显示)。
例如:</ p>

 &lt; form method =“POST”class =“like-form-js”&gt; 
&lt; input type =“hidden”name =“post_id”value =“&lt;? = $ post ['id']?&gt;“&gt;
&lt; input type =”hidden“name =”user_id“value =&lt;?= CoreController :: findIndentityId(); ?&gt;“&gt;
&lt; i class =”far fa-thumbs-up color-grey c-pointer submit-like“&gt;&lt; / i&gt;
&lt; / form&gt;
</ code> < / pre>

我的观点中有很多这样的表格。我的js:</ p>

  $('。submit-like')。click(function(function)  ){
$ .ajax({
url:'some-url',
type:'post',
dataType:'json',
data:$('。like-form-js') .serialize(),
success:function(data){
console.log('success');
}
});
});
</ code> </ pre>

我只需要提交一个我点击过的表单,但是这个表单有类似的类,它们都在提交。如何解决?</ p>
</ div>

展开原文

原文

I have several forms in my html view (they displayed by php foreach). Form example:

<form method="POST" class="like-form-js">
 <input type="hidden" name="post_id" value="<?= $post['id'] ?>">
 <input type="hidden" name="user_id" value=<?= CoreController::findIndentityId(); ?>">
 <i class="far fa-thumbs-up color-grey c-pointer submit-like"></i>
</form>

I have many such forms in my view. My js:

$('.submit-like').click( function() {
        $.ajax({
            url: 'some-url',
            type: 'post',
            dataType: 'json',
            data: $('.like-form-js').serialize(),
            success: function(data) {
                console.log('success');
            }
        });
    });

I need to submit only one form on which i clicked, but this forms have similar class and they are all submiting. How to solve this?

dta38159
dta38159 您没有使用此代码提交任何表单。你正在调用几个ajax页面,这是不同的。试着更好地解释你想要做什么。
大约一年之前 回复

1个回答



您必须指定要提交的表单
尝试此操作,</ p>

  $  ('.submit-like')。click(function(){
$(this).parent()。submit()
})

$('like-form-js')。submit( function(e){
e.preventDefault();
$ .ajax({
url:'some-url',
type:'post',
dataType:'json',
data: $(this).serialize(),
success:function(data){
console.log('success');
}
});
})
</ code> </ pre >
</ div>

展开原文

原文

You have to specify which form to be submitted Try this,

$('.submit-like').click(function(){
     $(this).parent().submit()
})

$('like-form-js').submit(function(e){
    e.preventDefault();
    $.ajax({
            url: 'some-url',
            type: 'post',
            dataType: 'json',
            data: $(this).serialize(),
            success: function(data) {
                console.log('success');
            }
        });
})

doushenken2833
doushenken2833 这很有效。 非常感谢
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐