我有一個帶有輸入框和按鈕的HTML表單。我綁定了一個提交事件,但是當我嘗試將輸入框的值與正則表達式(/\w+/)
相匹配時,我得到的結果不一致:如何在JQuery提交函數中獲取輸入標籤的原始值?
1)它看起來像它將值更改爲URI編碼字符(例如,它用+代替空格)。
2)即使它將值更改爲URI編碼字符,如何才能將正則表達式(/\w+/)
與+或其他非字母數字符號匹配?
如何獲取原始值?
我的jQuery代碼:
$('#form-send-username').on('submit', registrationFormListener);
function registrationFormListener(event) {
event.preventDefault();
console.log($('#user-input-box').val()); // Print raw value
if($('#user-input-box').val().match(/\w+/)) { // Even matches non-alphanumeric characters
...
}
}
您需要錨定的正則表達式,即'/^\ w + $ /'。至於原始值,我沒有看到空格被'+'替代(儘管如此,還沒有用你的代碼進行測試)。 – nhahtdh
哦對!謝謝,那是行得通的。關於用+替換空格,如果您提交包含空格的值,則ajax表單將返回URI編碼的值。無論如何,現在這不是一個問題,因爲我可以檢查你所建議的正則表達式。所以,再次感謝你!請將您的評論放在答案框中,以便我可以選擇它作爲正確的答案。 –