在我的代碼,我有這個回調PHP壓倒一切AJAX POST請求
$('#tagList').tagit({
//Every new dag will be pushed in the list array
tagsChanged: function(tagValue,action,element){
list.push(tagValue);
$.ajax({
url: "dostuff.php",
type: "POST",
data:{ items:list.join("::")},
success: function(data){
$('#wrap').append(data);
}
});
}
});
它所做的是,每次我添加一個標籤新添加的標籤將在陣列中推之後,它會作出AJAX發佈請求。
,然後我這裏有這些領域
<form method = "POST" action = "demo3.php">
News Title <input id = "news_title" type = "text" name = "news_title" /><br>
<label>Insert Some tags </label>
<ul id="tagList" data-name="demo2">
</ul>
<input type = "submit" name = "submit" id = "submit" value = "Post News" />
</div>
</form>
,當我點擊提交(它基本上重新加載頁面)的$ _ POST [「項目」(這是在AJAX請求,每次一個新標籤創建被添加)正在擦除或刪除POST全局數組中。因此將我的$ _POST全局數組留空。
無論如何我可以合併這兩個?或者反正不要讓PHP覆蓋或刪除$_POST['items']
?因爲我將需要的物品爲我的查詢
而且我使用了一個名爲TAG-IT
插件,如果你們有興趣,這裏是我整個代碼
<!doctype html>
<html>
<head>
<script src="demo/js/jquery.1.7.2.min.js"></script>
<script src="demo/js/jquery-ui.1.8.20.min.js"></script>
<script src="js/tagit.js"></script>
<link rel="stylesheet" type="text/css" href="css/tagit-stylish-yellow.css">
<script>
$(document).ready(function() {
var list = new Array();
$('#tagList').tagit({
//Every new dag will be pushed in the list array
tagsChanged: function(tagValue,action,element){
list.push(tagValue);
$.ajax({
url: "dostuff.php",
type: "POST",
data:{ items:list.join("::")},
success: function(data){
$('#wrap').append(data);
}
});
}
});
});
</script>
</head>
<body>
<div id="wrap">
<div class="box">
<button class = "viewTags">View Tags</button>
<form method = "POST" action = "demo3.php">
News Title <input id = "news_title" type = "text" name = "news_title" /><br>
<label>Insert Some tags </label>
<ul id="tagList" data-name="demo2">
</ul>
<input type = "submit" name = "submit" id = "submit" value = "Post News" />
</div>
</form>
</div>
</body>
</html>
這裏是dostuff。 php
<?php
$lis = $_POST['items'];
$liarray = explode("::", $lis);
print_r($liarray);
print_r($_POST);
?>
PHP不會「覆蓋」$ _POST。你得到的$ _POST是PHP收到的。如果$ _POST爲空,那麼你沒有發送任何東西,或者它的格式不正確。 – 2012-08-02 04:38:25
哦,我明白了。我將如何合併PHP收到的由ajax和POST發出的POST請求?因爲我會需要他們兩個。 – user962206 2012-08-02 04:39:26
這沒有任何意義。你問:「我現在的奶奶發送的禮物和我從奶奶收到的禮物怎麼合併?」?除非你的代碼被佔用,否則你的JS代碼會發起一個SINGLE http請求,執行一個SINGLE POST到你的服務器端PHP腳本。 – 2012-08-02 04:40:50