JQuery AJAX пост - не быть уволен в первый раз - PullRequest
0 голосов
/ 04 марта 2011

Я пытаюсь сделать сообщение ajax после нажатия кнопки, и оно работает в Firefox, но не в IE при первой загрузке страницы.Это сработает, если я обновлю страницу и попробую снова во второй раз - но не в первый раз, и это очень важно.

Я сканировал различные веб-страницы - это может быть связано со слушателем?(Я только что видел упомянутое где-то упомянутое) Есть ли что-то неправильно настроенное для ajax и публикации при первой загрузке страницы?

$(document).ready(function() {                      
$('#btnCont').bind('click',function () {    

var itm = $("#txtItm").val();
var qty = $("#txtQty").val();
var msg = $("#txtMessage").val();
var op_id = $("#txtOp_id").val();

 //if i alert these values out they alert out no prob
 alert(itm+'-'+qty+'-'+msg+'-'+op_id);


$.ajax({
type: "POST",
url: "do_request.php?msg="+msg+"&itm="+itm+"&qty="+qty+"&op_id="+op_id,
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.');
}
});

});

1 Ответ

0 голосов
/ 07 марта 2011

Я бы начал отлаживать событие click. То есть если вы попытаетесь поместить .bind в тег href, у самого тега будет событие click, которое может действовать нежелательным образом. Существует команда с именем что-то вроде event.preventDefaults (), которая избегает стандартной функции click. В конце концов, вы пытаетесь манипулировать DOM последним из всех действий (document.load).

$ ('# btnCont'). Bind ('click', function () {..}

Я бы также попытался отладить ту же функциональность, добавив в тег onClientClick вместо добавления привязки к загрузке документа.

Надеюсь, это принесет немного света.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...