我做了一個基本的AJAX函數調用一個php文件。響應是一個HTML插入我的主頁「內容框」AJAX發送和接收不同的數據類型
function LoadAjax_alert_display_one(){
id_alert = <?php echo $id_alerte; ?>;
$('.preloader').show();
$.ajax({
mimeType: 'text/html; charset=utf-8', // ! Need set mimeType only when run from local file
url: 'ajax/alert_display_one.php',
data: "id_alerte="+id_alert,
type: 'GET',
success: function(data) {
$('#ajax-content').html(data);
$('.preloader').hide();
},
error: function (jqXHR, textStatus, errorThrown) {
alert(errorThrown);
},
dataType: "html",
async: false
});
}
這工作正常。該文件名爲「alerts_create.php」也runinng一個PHP從數據庫中獲取數據,並使用while循環它
while ($stmt->fetch()) {
echo "<tr>";
echo "<td><a href='#' onclick='LoadAjax_alert_display_one();'>" . $nom_alerte . "</a></td>";
echo "<td>" . $country . "</td>";
echo "</tr>"; }
我的問題是,我無法正常通過我在while循環創建鏈接顯示。 $ nom_alerte總是取循環的最後一次迭代的值。所以我的AJAX以此爲鏈接價值; 任何想法我可以做到這一點?
爲了清晰我的標題:我的問題是發送一個PHP變量到被調用的文件('alerts_create.php')並檢索一個HTML結果。
SOLUTION:剛剛到PHP變量傳遞的AJAX功能參數:
function LoadAjax_alert_display_one(id_alerte){
$('.preloader').show();
$.ajax({
mimeType: 'text/html; charset=utf-8', // ! Need set mimeType only when run from local file
url: 'ajax/alert_display_one.php',
data: "id_alerte="+id_alerte,
type: 'GET',
success: function(data) {
$('#ajax-content').html(data);
$('.preloader').hide();
},
error: function (jqXHR, textStatus, errorThrown) {
alert(errorThrown);
},
dataType: "html",
async: false
});
}
php文件使用在循環中創建數組然後傳入json格式並將其解碼爲ajax成功函數 – 2014-11-14 13:20:15
有沒有爲什麼你不使用.load()從jquery(因爲你已經使用jQuery)? – Markai 2014-11-14 13:21:54
@AghaUmairAhmed:謝謝你的回答;我顯然不夠好實施它。你會如此友善地給我一個例子。 – 2014-11-14 13:28:20