Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Wordpress表单提交中的Ajax_Php_Jquery_Ajax_Wordpress - Fatal编程技术网

Php Wordpress表单提交中的Ajax

Php Wordpress表单提交中的Ajax,php,jquery,ajax,wordpress,Php,Jquery,Ajax,Wordpress,我跟着这一页走- 所以我有一个简单的表格 <form role="form"> <div class="form-group"> <label class="">Name</label> <input type="text" id="name" class="form-control" name="name" /> </div>

我跟着这一页走-

所以我有一个简单的表格

    <form role="form">
        <div class="form-group">
            <label class="">Name</label>
            <input type="text" id="name" class="form-control" name="name" />
        </div>

        <div class="form-group">
            <label class="">Email</label>
            <input type="text" id="email" class="form-control" name="email" />
        </div>
    </form> 
我使用grunt连接我的js文件,然后将其缩小为
/js/compiled/main.min.js
这个缩小的文件包括用于验证表单和post函数的js

js

    $atj(function(){
      $atj('.js-training').click(function(e) {
        //
        e.preventDefault();

        if(verfiyTrainingFields()) {
          $atj.post(
            MyAjax.ajaxurl,
            {
              action : 'myajax-submit',
              firstName : $atj("#name").val(), 
              email : $atj("#email").val(), 
            },
            function(response){
              alert(response);
            }
          )
        }
      });
    })


    //Verfiy 
    function verfiyTrainingFields() {
      var flag = true;

      var name =        $atj('#name');
      var email =       $atj('#email');

      if(name.val().indexOf(' ') === -1 ){
        name.parent().prepend('<p class="form-error">Please enter name, first space last</p>');
        fadeOut();
        flag = false;
      }
      if(!IsEmail(email.val())){
        email.parent().prepend('<p class="form-error">Please enter valid email address</p>');
        fadeOut();
        flag = false;
      }
      return flag;
    }
更新

    add_action( 'wp_enqueue_scripts', 'add_my_script' );

    function add_my_script() {
        wp_register_script('scripts',get_template_directory_uri() . '/js/compiled/main.min.js', array('jquery'),1 ,true);
        wp_enqueue_script('scripts');
        //
        wp_enqueue_script( 'my-ajax-request', plugin_dir_url( __FILE__ ) . '/js/compiled/main.min.js', array( 'jquery' ),'', true );
        wp_localize_script( 'my-ajax-request', 'MyAjax', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ));
    }

首先,将您的
wp_排队_脚本
wp_本地化_脚本
放入一个与
wp_排队_脚本
操作挂钩的函数中。我已将wp_排队_脚本和wp_本地化_脚本添加到我用来加载jQuery的函数中-我已更新了我的问题以显示代码-我仍然在控制台中遇到相同的错误
    Uncaught ReferenceError: MyAjax is not defined 
    add_action( 'wp_enqueue_scripts', 'add_my_script' );

    function add_my_script() {
        wp_register_script('scripts',get_template_directory_uri() . '/js/compiled/main.min.js', array('jquery'),1 ,true);
        wp_enqueue_script('scripts');
        //
        wp_enqueue_script( 'my-ajax-request', plugin_dir_url( __FILE__ ) . '/js/compiled/main.min.js', array( 'jquery' ),'', true );
        wp_localize_script( 'my-ajax-request', 'MyAjax', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ));
    }