Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.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/2/jquery/71.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 复选框为票证时发送帖子-不带提交按钮_Php_Jquery_Ajax_Checkbox - Fatal编程技术网

Php 复选框为票证时发送帖子-不带提交按钮

Php 复选框为票证时发送帖子-不带提交按钮,php,jquery,ajax,checkbox,Php,Jquery,Ajax,Checkbox,我想在选中其中一个复选框时,不使用submit按钮发送POST数据—使用AJAX 我有这段代码,但我认为,当我勾选复选框时,我应该得到一个带有已发布数据的警报(要知道,它正在工作),但我根本没有得到任何反应。我添加了jquery,因此它是代码函数中的某种错误 <form method="post" name="form1"> <input type="checkbox" name="checkboxList[]" value="1">value1</inpu

我想在选中其中一个复选框时,不使用submit按钮发送POST数据—使用AJAX

我有这段代码,但我认为,当我勾选复选框时,我应该得到一个带有已发布数据的警报(要知道,它正在工作),但我根本没有得到任何反应。我添加了jquery,因此它是代码函数中的某种错误

<form method="post" name="form1">
    <input type="checkbox" name="checkboxList[]" value="1">value1</input>
    <input type="checkbox" name="checkboxList[]" value="2">value2</input>
    <input type="checkbox" name="checkboxList[]" value="3">value3</input>
</form>

<script>

jQuery(document).ready(function($){

    // jQuery code is in here
    $("input[type=checkbox]").on("click", function() {

    var data = $(this).val();
    console.log(data); // 1, 2 or 3 (value)
    $.ajax({
        url: "<?php echo JURI::getInstance(); ?>", // URL should be correct!
        type: "POST", 
        async: true,
        cache: false,
        data: {data: data},
        dataType: 'text', 
        success: function(data){ 
            alert(data); 
        }
    });
    });

});




</script>

价值1
价值2
价值3
jQuery(文档).ready(函数($){
//jQuery代码在这里
$(“输入[type=checkbox]”)。在(“单击”,函数(){
var data=$(this.val();
console.log(数据);//1、2或3(值)
$.ajax({
url:,//url应该是正确的!
类型:“POST”,
async:true,
cache:false,
数据:{data:data},
数据类型:“文本”,
成功:函数(数据){
警报(数据);
}
});
});
});

问题:获取页面的HTML内容,而不是成功方法的值

将HTML更改如下1。删除
并更改2。将表格
名称
更改为
id

<form method="post" id="form1">
    <input type="checkbox" name="checkboxList[]" value="1">value1
    <input type="checkbox" name="checkboxList[]" value="2">value2
    <input type="checkbox" name="checkboxList[]" value="3">value3
</form>
您的表单没有选择,在post中有空白数据

请尝试下面的代码

<form method="post" name="form1">
    <input type="checkbox" name="checkboxList[]" value="1">value1</input>
    <input type="checkbox" name="checkboxList[]" value="2">value2</input>
    <input type="checkbox" name="checkboxList[]" value="3">value3</input>
</form>

<script>
    $("input[type=checkbox]").on("click", function() {
      var data = $("form").serialize();
        $.ajax({
            url: "../../x.php", // URL should be correct!
            type: "POST",
            async: true,
            cache: false,
            data: {data: data},
            dataType: 'json', 
            success: function(response_data){ 
                alert(response_data);
            }
        });
    });
 </script>

价值1
价值2
价值3
$(“输入[type=checkbox]”)。在(“单击”,函数(){
变量数据=$(“形式”).serialize();
$.ajax({
url:“../x.php”,//url应该正确!
类型:“POST”,
async:true,
cache:false,
数据:{data:data},
数据类型:“json”,
成功:函数(响应_数据){
警报(响应数据);
}
});
});

您有一个成功回调函数,但也应该有一个错误回调函数。同样的方法,除了不是
success:function(){alert(data);}
它是
error:function(data).
share
x.php
code也?@Niklesh x.php只包含print\r($\u POST);当然,我得到的是空数组。尝试将此数据:({data:data})更改为数据:{data:data},仍然不会得到任何警报。可能是因为url有点错误吗?你们检查过浏览器控制台了吗?这将有助于找出问题所在。控制台显示“JQMIGRATE:Migrate已安装,版本1.4.1”,但当我勾选复选框时,不会显示其他内容。我已将答案从“选中”事件更新为“单击”事件。请尝试并检查您的控制台..啊,您是否包含jquery文件?:)
<form method="post" name="form1">
    <input type="checkbox" name="checkboxList[]" value="1">value1</input>
    <input type="checkbox" name="checkboxList[]" value="2">value2</input>
    <input type="checkbox" name="checkboxList[]" value="3">value3</input>
</form>

<script>
    $("input[type=checkbox]").on("click", function() {
      var data = $("form").serialize();
        $.ajax({
            url: "../../x.php", // URL should be correct!
            type: "POST",
            async: true,
            cache: false,
            data: {data: data},
            dataType: 'json', 
            success: function(response_data){ 
                alert(response_data);
            }
        });
    });
 </script>