У меня есть ajax и полный запрос в той же форме.Щелчок мышью запускает ajax в поле ввода, и если я нажимаю ввод в том же поле ввода сразу после щелчка мыши, то появляется неприятная ошибка, которая показана ниже.
"Транспорт Http возвратил код состояния 0. Обычно это результат смешивания ajax и полных запросов. Обычно это нежелательно как по соображениям производительности, так и из-за целостности данных."
В моем случае поле ввода представляет собой переключатель, который использует ajax.Нажатие Enter вызывает полный запрос.Я использовал функцию Javascript от BalusC, у которой есть event.stopPropagation (), который работал для меня, и это было для поля ввода текста.Это также сработало для выпадающего списка.Но то же самое событие.stopPropagation () не работает для переключателя.Вы можете проверить ответ BalusC для справки.
Ниже приведен мой фрагмент кода, который не работает
<h:form id=blah...... onkeypress="enterToChange(event)">
....
</h:form>
Функция Javascript
function enterToChange(event){
if (event.keyCode==13 && event.target.id.match('radiobutton_id'){
event.stopPropagation(); // Don't bubble up.
event.preventDefault(); // Prevent default behaviour (submitting the form).
event.target.onchange(); // Trigger onchange where key was actually pressed.
}
}
Я использовал firebug, чтобы увидеть, что операторы в предложении if выполняются, но ошибка по какой-то причине все еще появляется, и сразу же отображается вся страница.Мне нужно, чтобы избежать ошибки в любом случае.
Любой ответ высоко ценится.Спасибо