我今天刚刚开始接收JQuery,由于某种原因,我无法在提交表单时使用这个简单的$ .post工作。
我想将2的值作为星号传递给我的PHP页面“update_item.php”。
我添加了一个提醒,看到当我点击提交时它会给我提醒,但由于某种原因,2的值只是没有传递到php页面。
以下是我对JQuery的看法:
$('#form_edit_item').submit(
function(){
alert("submitting");
$.post(
"edititem.php",
{star: "2"},
);
});
这是我在update_item.php中的内容:
$star = $_POST['star'];
echo "Star value: " .$star. "";
我做错了什么? 非常感谢您的帮助!谢谢!
答案 0 :(得分:0)
$.post(url, data, callback, "json");
答案 1 :(得分:0)
$('#form_edit_item').submit(
function() {
alert("submitting");
$.post("update_item.php", {
star : "2"
});
});
删除{star : "2"}
后的逗号逗号。试试这个。
答案 2 :(得分:0)
您可以使用ajax
$.ajax({
type: "POST",
url: "update_item.php",
data: {
star: "2" // or 'star: $('#id').val()', or any other value
}
}).done(function( msg ) {
// do it when its done or do nothing
});
并且在update_item.php
中你应该使用类似的东西
<?php $star=(isset($_POST['star']) ? $_POST['star'] : '');
echo $star; ?>
如果这不起作用,请尝试将POST
更改为GET
,以便您可以通过网址检查传递值(domain.com/update_item.php?star=2)
答案 3 :(得分:0)
您可以使用此代码
<form action="../handler/AjaxHelper.php" method="POST">
</form>
$(document).ready(function() {
$('form').submit(function() {
$.ajax({
type: this.method,
url: this.action,
data: $(this).serialize(),
success: function(data)
{
var result = $.parseJSON(data);
if (result["messageCode"] == 'success')
{
alert(result["message"]);
}
else
{
alert(result["message"])
}
},
error: function()
{
alert("Please Try Again");
}
});
return false;
});
});
在 AjaxHelper.php
$objLoginHelper = new LoginHelper();
$objLoginHelper = unserialize($_SESSION["LoginInformation"]);
$postDate = date("Y-m-d H:i:s", strtotime($_POST['txtTopicDate']));
$dataTopics = array($_POST['txtTopicSubject'], $postDate, $_POST['ddlCategories'], $objLoginHelper->getUserLoginId());
$result = array();
try {
$rp = new Repository();
$rp->SaveForumTopics($dataTopics);
$result["messageCode"] = "success";
$result["message"] = "Category Save Successfully";
} catch (Exception $ex) {
$result["messageCode"] = "error";
$result["message"] = $ex->getMessage();
}
echo json_encode($result);