我明顯在做一些愚蠢的事情,我不太明白什麼是錯的。每當我點擊「發送」按鈕,點擊事件都無法觸發。點擊事件不會觸發輸入類型=提交
function CreateNewMessage()
{
var receiver = $("#receiver").value;
var msg_body = ("#msg_body").value;
$("#submit").click(function(event) {
alert("it works!");
$.post("new/", {"receiver" : receiver, "msg_body" : msg_body});
});
}
(function() {
$(document).ready(function() {
CreateNewMessage();
});
})();
和HTML按鈕
<input id="submit" value="Send" type="submit">
誰能發現我的錯誤?
編輯:
因此,這裏是我的代碼看起來像現在正在大家的建議納入考慮後。
function CreateNewMessage()
{
$("#submit").click(function(event) {
var receiver = $("#receiver").val();
var msg_body = $("#msg_body").val();
alert("it works!");
$.post("message/new/", {"receiver" : receiver, "msg_body" : msg_body});
});
}
$(document).ready(function() {
CreateNewMessage();
});
它仍然沒有正確發送請求,並且控制檯沒有記錄錯誤。我嘗試使用submit事件而不是上面代碼中的click事件,但得到了相同的結果。
編輯2 因此,代碼工作在jsFiddle上,但不在我的瀏覽器中。我真的很困惑
編輯3: 也許這與它有關...請注意,頁面初始加載時,提交按鈕不存在。它是在特定的javascript事件觸發時生成的。
檢查您的瀏覽器中的控制檯,它會給你一個線索發生了什麼問題。瞭解如何調試代碼。 – kapa
當您使用單個項目時,將索引器'[0]'添加到您的'$()'調用中。 – Dai