如何在jQuery中获取我的intert.php url?

时间:2017-03-21 作者:shpwebhost

我想通过jquery保存表单数据,但无法在脚本中访问它。谁能帮帮我吗。脚本中的URL访问:url: \'admin.php?page=insert.php\',

我的脚本

$(function () {
        $(\'form\').on(\'submit\', function (e) {
          e.preventDefault();
          var schema_key = $("#schema_key").val(); 
          $.ajax({
            type: \'post\',
            url: \'admin.php?page=insert.php\',
            data: schema_key,
            success: function () {
              alert(\'form was submitted\');
            }
          });

        });

      });

2 个回复
SO网友:Roland Allla

我认为您必须添加所有url,因为如果您的脚本文件不在主页中,它将无法访问此url:“admin”。php?页码=插入。php”,托盘中添加完整url,url:“域”。com/管理php?页码=插入。php\'

SO网友:Aftab

$(function () {
    var site_url = window.location.hostname; // www.example.com
    $(\'form\').on(\'submit\', function (e) {
      e.preventDefault();
      var data = {
            action : \'insert\',
            schema_key : $("#schema_key").val(),
      }; // adding action
      $.ajax({
        type: \'post\',
        url: site_url+\'/wp-admin/admin-ajax.php\',
        data: data,
        success: function () {
          alert(\'form was submitted\');
        }
      }); // end of ajax

   }); // end of form submit

}); // end of $function
如果您检查我发送给ajax调用的数据,则有一个“action”参数,该操作负责定义一个函数,用于在数据库中插入细节。

现在,您需要在活动主题的函数中定义一个挂钩和回调函数。php文件或插件文件。

语法为:add_action( \'wp_ajax_$action\', \'callback_function\' );

因此,在您的情况下,它将是:

function wp_insert_schema_key() {
    $schema_key = $_POST["schema_key"];
    // Your code for inserting/updating in DB.
    echo "Success"; // response to be sent from AJAX call
    die;

}
add_action( \'wp_ajax_insert\', \'wp_insert_schema_key\' );
有关更多信息,请查看-https://codex.wordpress.org/AJAX_in_Plugins