2012-05-25 28 views
0

我試圖設置一個確認框來刪除在php頁面上使用javascript/jquery的消息。 javascript函數中正確設置了變量,但現在我無法將函數正確發佈到頁面。將php變量發佈到使用javascript的頁面

我有以下列入頭

<script src="http://code.jquery.com/jquery-latest.js"></script> 

現在的代碼。你可以看到,我試圖將變量發佈到messages.php,但是當我檢查是否有人發佈時,什麼都不會發生。

+0

供參考:'mysql_real_escape_string'用於輸入,沒有任何一點在輸出上調用它,你需要在messages.php中再次調用它,然後再插入。 – Louis

+0

至於你的問題,你的代碼看起來不錯,你可以檢查你的messages.php頁面,問題可能在那裏。 – Louis

+0

我應該尋找什麼?我撞到我的if語句來檢查POSTED值到最高。它之前的唯一一件事是一對包含幾頁和一個會話變量的聲明。 – user1406951

回答

1

看着眼前的JavaScript,deleteMessage()可以寫成如下,以避免混亂的字符串處理,並給你更好的反饋,同時調試:

function deleteMessage(msgID, userid) { 
    if (!confirm("Are you sure?")) { return false; } 
    var data = { 
     'action': 'delete', 
     'msgID': msgID, 
     'user': userid 
    }; 
    $.ajax({ 
     url:'messages.php', 
     data: data, 
     type: 'POST', 
     success: function(response) { 
      alert(response);//debug message 
      //window.location.reload() 
     }, 
     error: function((jqXHR, textStatus, errorThrown) { 
      alert((typeof errorThrown == 'string') ? errorThrown : textStatus);//debug message 
     } 
    }); 
} 

你可以選擇當一切都調試切換回$.post()

你會看到'action': 'delete'是硬編碼的。這是一個小問題,但沒有必要將'刪除'傳遞給deleteMessage,因爲這樣命名的函數不會執行其他任何操作。在構建HTML時,需要進行相應的更改。

相關問題