我有一個Ajax和以相同的形式完整的請求。點擊鼠標點擊輸入框中的ajax,如果在鼠標點擊後立即在相同的輸入框上按回車鍵,則彈出一個令人討厭的錯誤,如下所示。混合Ajax和完整請求
「HTTP傳輸返回一個0狀態代碼。這通常是混合Ajax和全面的請求的結果,這通常是不需要的,對於性能和數據完整性的原因。」
在我的情況下輸入字段是使用AJAX一個單選按鈕。按Enter鍵會導致完整的請求。 我使用了BalusC的Javascript函數,它具有event.stopPropagation(),它適用於我,它用於文本輸入字段。它也適用於一個下拉列表。 但是同樣的event.stopPropagation()不能用於單選按鈕。 您可以查詢BalusC's answer以供參考。
下面是我的一段代碼,這似乎並沒有工作
<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.
}
}
我用螢火地看到,如果子句中的語句執行,但出於某種原因,錯誤仍然彈出,並立即呈現整個頁面。我需要避免在任何情況下的錯誤。
任何答案的高度讚賞。 感謝
它適合我。也許你在''組件上有'onchange =「submit()」'?請展示您的觀點。 –
BalusC
問題已解決。推入輸入正在調用submit(),並且沒有onclick提交按鈕。所以添加Javascript函數返回false。感謝您的代碼BalusC –
發佈這個答案並接受它。這樣做完全可以。 – WTK