Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.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/1/php/248.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
Javascript 同一页面中的多个按钮提交到Ajax_Javascript_Php_Jquery_Ajax_Wordpress - Fatal编程技术网

Javascript 同一页面中的多个按钮提交到Ajax

Javascript 同一页面中的多个按钮提交到Ajax,javascript,php,jquery,ajax,wordpress,Javascript,Php,Jquery,Ajax,Wordpress,我在同一个页面上有多个按钮,比如50个或者更多,可以向Ajax wordpress提交一个值。它们看起来像这样: <input id="1-57977357564a7" class="button-primary" type="submit" value="Done"/> <input id="2-57977357564a7" class="button-primary" type="submit" value="Done"/> <input id="3-57977

我在同一个页面上有多个按钮,比如50个或者更多,可以向Ajax wordpress提交一个值。它们看起来像这样:

<input id="1-57977357564a7" class="button-primary" type="submit" value="Done"/>
<input id="2-57977357564a7" class="button-primary" type="submit" value="Done"/>
<input id="3-57977357564a9" class="button-primary" type="submit" value="Done"/>
// And so on, more buttons
我需要传递
id
一些如何使用此函数的信息
我应该用Ajax编写什么来传递
id

我怎样才能使每个按钮都指向这个Ajax
由于Ajax可能不会传递
id
而不是一个值,因此我应该如何将任何值传递给Ajax
Ajax应该类似于:

$.ajax({
     url: "<?php echo esc_js( admin_url( 'admin-ajax.php' ) ) ?>",
     type: "POST",// I am not sure
     data: // Something I don't know here
     //may be more here     
 });
$.ajax({
url:“”,
键入:“POST”//我不确定
data://我在这里不知道
//这里可能更多
});
试试:

HTML:

<input id="1-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="2-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="3-57977357564a9" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
function ajax($this) {
    var id = $this.attr("id");


    $.ajax({
        method: "POST",
        url: "your address",
        dataType: "your response type",
        data: {
            id: id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
if (isset($_POST["id"])) {
    var_dump($_POST["id"]);
    exit;
}
function ajax($this) {//If you got error "Function ajax is not defined" declare this before document ready
    var id = $this.attr("id");

    $.ajax({
        method: "POST",
        url: "<?php echo esc_js( admin_url( 'admin-ajax.php' ) ) ?>",
        dataType: "text",
        data: {
            action: "update_completed_todos",// call the php function 
            id: id // store id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
add_action('wp_ajax_update_completed_todos', 'update_completed_todos');
add_action( 'wp_ajax_nopriv_update_completed_todos', 'update_completed_todos' );
function update_completed_todos() {

    $id = $_POST['id'];// store id from ajax
    //do something with this id
}
PHP:

<input id="1-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="2-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="3-57977357564a9" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
function ajax($this) {
    var id = $this.attr("id");


    $.ajax({
        method: "POST",
        url: "your address",
        dataType: "your response type",
        data: {
            id: id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
if (isset($_POST["id"])) {
    var_dump($_POST["id"]);
    exit;
}
function ajax($this) {//If you got error "Function ajax is not defined" declare this before document ready
    var id = $this.attr("id");

    $.ajax({
        method: "POST",
        url: "<?php echo esc_js( admin_url( 'admin-ajax.php' ) ) ?>",
        dataType: "text",
        data: {
            action: "update_completed_todos",// call the php function 
            id: id // store id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
add_action('wp_ajax_update_completed_todos', 'update_completed_todos');
add_action( 'wp_ajax_nopriv_update_completed_todos', 'update_completed_todos' );
function update_completed_todos() {

    $id = $_POST['id'];// store id from ajax
    //do something with this id
}
当然,您必须将数据类型和url更改为您的数据

wordpress方式

Javascript:

<input id="1-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="2-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="3-57977357564a9" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
function ajax($this) {
    var id = $this.attr("id");


    $.ajax({
        method: "POST",
        url: "your address",
        dataType: "your response type",
        data: {
            id: id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
if (isset($_POST["id"])) {
    var_dump($_POST["id"]);
    exit;
}
function ajax($this) {//If you got error "Function ajax is not defined" declare this before document ready
    var id = $this.attr("id");

    $.ajax({
        method: "POST",
        url: "<?php echo esc_js( admin_url( 'admin-ajax.php' ) ) ?>",
        dataType: "text",
        data: {
            action: "update_completed_todos",// call the php function 
            id: id // store id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
add_action('wp_ajax_update_completed_todos', 'update_completed_todos');
add_action( 'wp_ajax_nopriv_update_completed_todos', 'update_completed_todos' );
function update_completed_todos() {

    $id = $_POST['id'];// store id from ajax
    //do something with this id
}
尝试:

HTML:

<input id="1-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="2-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="3-57977357564a9" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
function ajax($this) {
    var id = $this.attr("id");


    $.ajax({
        method: "POST",
        url: "your address",
        dataType: "your response type",
        data: {
            id: id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
if (isset($_POST["id"])) {
    var_dump($_POST["id"]);
    exit;
}
function ajax($this) {//If you got error "Function ajax is not defined" declare this before document ready
    var id = $this.attr("id");

    $.ajax({
        method: "POST",
        url: "<?php echo esc_js( admin_url( 'admin-ajax.php' ) ) ?>",
        dataType: "text",
        data: {
            action: "update_completed_todos",// call the php function 
            id: id // store id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
add_action('wp_ajax_update_completed_todos', 'update_completed_todos');
add_action( 'wp_ajax_nopriv_update_completed_todos', 'update_completed_todos' );
function update_completed_todos() {

    $id = $_POST['id'];// store id from ajax
    //do something with this id
}
PHP:

<input id="1-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="2-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="3-57977357564a9" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
function ajax($this) {
    var id = $this.attr("id");


    $.ajax({
        method: "POST",
        url: "your address",
        dataType: "your response type",
        data: {
            id: id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
if (isset($_POST["id"])) {
    var_dump($_POST["id"]);
    exit;
}
function ajax($this) {//If you got error "Function ajax is not defined" declare this before document ready
    var id = $this.attr("id");

    $.ajax({
        method: "POST",
        url: "<?php echo esc_js( admin_url( 'admin-ajax.php' ) ) ?>",
        dataType: "text",
        data: {
            action: "update_completed_todos",// call the php function 
            id: id // store id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
add_action('wp_ajax_update_completed_todos', 'update_completed_todos');
add_action( 'wp_ajax_nopriv_update_completed_todos', 'update_completed_todos' );
function update_completed_todos() {

    $id = $_POST['id'];// store id from ajax
    //do something with this id
}
当然,您必须将数据类型和url更改为您的数据

wordpress方式

Javascript:

<input id="1-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="2-57977357564a7" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
<input id="3-57977357564a9" class="button-primary" type="submit" value="Done" onclick="ajax($(this));return false;"/>
function ajax($this) {
    var id = $this.attr("id");


    $.ajax({
        method: "POST",
        url: "your address",
        dataType: "your response type",
        data: {
            id: id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
if (isset($_POST["id"])) {
    var_dump($_POST["id"]);
    exit;
}
function ajax($this) {//If you got error "Function ajax is not defined" declare this before document ready
    var id = $this.attr("id");

    $.ajax({
        method: "POST",
        url: "<?php echo esc_js( admin_url( 'admin-ajax.php' ) ) ?>",
        dataType: "text",
        data: {
            action: "update_completed_todos",// call the php function 
            id: id // store id
        },
        success: function (response) {
            console.log(response);
        }
    });
}
add_action('wp_ajax_update_completed_todos', 'update_completed_todos');
add_action( 'wp_ajax_nopriv_update_completed_todos', 'update_completed_todos' );
function update_completed_todos() {

    $id = $_POST['id'];// store id from ajax
    //do something with this id
}

使用onclick=“update\u completed\u todos('your param here')”代替type=“submit”使用type=“button”@Abbas,我认为onclick=不适用于php函数。这并没有回答我问题的ajax部分`事实上,这与我的问题毫无关系,因为我清楚地提到了这是ajax问题。使用onclick=“update\u completed\u todos('your param here')”代替type=“submit”使用type=“button”@Abbas,我认为onclick=不适用于php函数。这并没有回答我问题的ajax部分`事实上,这与我的问题毫无关系,因为我清楚地提到了这是ajax问题。这正是我想要的,它与wordpress ajax配合得非常好。谢谢。数据类型将是
“text”
,url将是
,这正是我想要的,它与wordpress ajax配合得很好。谢谢。数据类型将是
“text”
,url将是