2011-02-09 88 views
0

我在我的页面之一有一些ajax/jquery代码,我遇到的问题是,它不起作用的第一次页面加载。如果我刷新页面,它没有任何问题。它在Firefox中第一次工作。所有我使用的变量都可以,因为我已经提醒他们。我没有收到成功或错误消息。它似乎没有做任何事情?jquery ajax后 - 不工作的第一次页面加载

任何想法?

$('.window .request').click(function (e) {    
    var itm = document.getElementById('txtItm').value; 
    var qty = document.getElementById('txtQty').value; 
    var msg = document.getElementById('txtMessage').value; 
    var op_id = document.getElementById('txtOp_id').value; 

    $.ajax({ 
    type: "POST", 
    url: "do_request.php?msg="+msg+"&itm="+itm+"&qty="+qty+"&op_id="+op_id, 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function (msg) { 
     document.getElementById('div_main').style.display='none'; 
     document.getElementById('div_success').style.display='block'; 
     var row_id = document.getElementById('txtRow').value; 
     document.getElementById('row'+row_id).style.backgroundColor='#b4e8aa'; 
    }, 

    error: function (XMLHttpRequest, textStatus, errorThrown) { 
     alert('Error submitting request.'); 
    } 

    }); 

}); 
+0

这正好我。我有一个`

`和`

回答

0

很难确定可能给出的信息是什么问题,听起来好像你没有以一致的方式完全测试页面。看起来页面上可能会有另一个元素影响click事件,与处理程序逻辑本身相反,但是无法告诉。请确保您绑定到页面后点击事件已准备就绪:

$(document).ready(function(){ 
    $("#uniquedomid").bind('click',function(){ 
    // click handler logic 
    }); 
}); 

而且,你是新来的JQuery,有一件事你会想开始寻找都以各种方式哪些JQuery可以改善你的生活。它几乎做到了一切。但是对于初学者来说,你将要开始使用:

$("#uniquedomid") 

而不是

document.getElementById("uniquedomid") 

而且

$("#uniquedomid").val(); 

而不是

document.getElementById("uniquedomid").value 
+0

感谢您的指点奥利弗我已经改变了一些东西,并开始使用它们。仍然没有运气的阿贾克斯位,它“越来越远”$ .ajax({“然后不做任何第一次。神秘。 – thegunner 2011-02-09 15:52:45

相关问题