Php 带有两个提交按钮的Wordpress Ajax表单

Php 带有两个提交按钮的Wordpress Ajax表单,php,jquery,ajax,wordpress,Php,Jquery,Ajax,Wordpress,我在wordpress工作,我有一个表单和两个提交按钮。我使用的是ajax,它是wordpress 当按下第一个提交按钮时,我希望回显语句1,当按下提交按钮2时,我希望回显状态2。我遵循了代码教程,但当我从控件中按submit时,返回空或无结果,并且在inspect中,浏览器中没有错误。下面是我的代码 HTML表单 <form id="voteform" action="" method="post"> <input name='vote' value='two' src='

我在wordpress工作,我有一个表单和两个提交按钮。我使用的是ajax,它是wordpress

当按下第一个提交按钮时,我希望回显语句1,当按下提交按钮2时,我希望回显状态2。我遵循了代码教程,但当我从控件中按submit时,返回空或无结果,并且在inspect中,浏览器中没有错误。下面是我的代码

HTML表单

<form id="voteform" action="" method="post">
<input  name='vote' value='two' src='http://localhost:8080/test/wp-content/uploads/2015/04/up.jpg' type='submit' type='image'>
<input  name='vote' value='one' src='http://localhost:8080/test/wp-content/uploads/2015/04/up.jpg' type='submit' type='image'>
</form>
Ajax和jquery

    jQuery(function ($) {
    $(document).on("click","input[name=vote]", function() {
    var _data= $('#voteform').serialize() + '&vote=' + $(this).val();
    $.ajax({
      type: 'POST',
      url: yes.ajaxurl,
      data:_data,
      success: function(html){
         $("#myresult").html(res);
      }
    });
    return false;
  });
});

再次请注意,我正在使用wordpress,因此请在这方面指导我,谢谢

这将为您提供所需:

$(document).ready(function(){
    $('input[value=\'one\'], input[value=\'two\']').on('click', function(){
        var _data= $('#voteform').serialize() + '&vote=' + $(this).val();
        $.ajax({
          type: 'POST',
          url: yes.ajaxurl,
          data:_data,
          success: function(html){
             $("#myresult").html(res);
          }
        });
        return false;
    });
});
Html:

<form id="voteform" action="" method="post">
    <input type="text" name="field1" value="field one value"/>
    <input type="text" name="field2" value="field two value"/>
    <input  class='vote' value='two' src='http://localhost:8080/test/wp-content/uploads/2015/04/up.jpg' type='submit' type='image'/>
    <input  class='vote' value='one' src='http://localhost:8080/test/wp-content/uploads/2015/04/up.jpg' type='submit' type='image'/>
</form>

您只是从按钮传递值,还是您的实际表单有更多字段?我的实际表单只有在这些提交按钮上方有两个文本字段。代码中提到的我的函数articlevote()在哪里。。。因为这个函数没有使用ajax代码运行,所以如果您的意思是这样的话,就不能从jQuery代码中调用php函数
articlevote()
。PHP只在页面加载时运行一次,然后就消失了。除了上面显示的函数外,还不清楚php代码中发生了什么。我刚刚创建了一个php pag,它定义了该函数,然后调用该函数来创建响应。我更新了我创建的示例页面,因此它显示了我使用的php代码Pakash它只返回空屏幕,没有收到任何内容,控制台没有错误在何处使用此操作:“articlevote”。。。。article vote是我的php函数的名称。。。请引导。。。你的代码里没有阿曲布他行动嘿。。。事实上,我想将它与表单一起使用,并将这两个按钮用作表单提交按钮。thanksit只是在控制台中刷新页面,没有错误。您是否将html按钮上的
name
属性更改为
classes
?如果您更改了这些,请查看代码中提到的我的函数articlevote()在哪里。。。因为此函数没有与ajax代码一起运行,所以在代码操作中没有缺少此函数:“articlevote”,
<form id="voteform" action="" method="post">
    <input type="text" name="field1" value="field one value"/>
    <input type="text" name="field2" value="field two value"/>
    <input  class='vote' value='two' src='http://localhost:8080/test/wp-content/uploads/2015/04/up.jpg' type='submit' type='image'/>
    <input  class='vote' value='one' src='http://localhost:8080/test/wp-content/uploads/2015/04/up.jpg' type='submit' type='image'/>
</form>
 jQuery(function($) {
     var yes = {ajaxurl:"mypage.php"}; // created for demo

      $('.vote').click(function(e) {
          e.preventDefault(); // stop the normal submit
          var _data = $('#voteform').serialize()+'&vote=' + $(this).val();
          //alert(_data)
          $.ajax({
              type: 'POST',
              url: yes.ajaxurl,
              data: _data,
              success: function(html) {
                  $("#myresult").html(html); // you had `res` here
              }
          });
      });
  });