这有什么不对吗?
编辑:
$check = $row['publish'] == 1 ? 'true' : 'false';
当我想要取消发布时它会起作用,但如果复选框为空,我就无法公开。
OnClick="doAction(<?php echo $check;?>, <?php echo $id;?>);"
function doAction(check,id){
$.ajax({
type: "GET",
url: "test.php",
data: "check=" + check + "&id=" + id,
success: function(msg){
alert( "Data Saved: " + msg );
}
});
}
和文件test.php:
$id = $_GET['id'];
$check = $_GET['check'];
if ($check == "false"){
$query = mysql_query("update article set publish = 1 where id =" . $id);
echo "Published";
}
else {
$query = mysql_query("update article set publish = 0 where id =" . $id);
echo "Unpublished";
}
我无法在test.php文件中显示id。它什么都没给我。但是在doAction中参数是(..,id)所以它已被发送但我没有在ajax调用中接收它然后在文件中。为什么呢?
答案 0 :(得分:1)
尝试更改:
data: "check=" + check + "&id = " + id,
要:
data: "check=" + check + "&id=" + id,
你应该定义HTML,JSON等用于此示例的响应:
dataType: "JSON"
答案 1 :(得分:0)
如果要传递参数中的值,请使用以下代码。
OnClick="doAction('<?php echo $check;?>', '<?php echo $id;?>');"