2012-03-06 63 views
1

我只想測試一個問號的URL?不過,我不斷收到一個無效的量詞錯誤信息......JavaScript:搜索「?」的URL字符串時無效的量詞

alert(window.location.href.search('?')); 

我又試圖之類的東西......

alert(window.location.href.search('\?')); 

/

alert(window.location.href.search(\?)); 

...沒有任何的運氣。

回答

5

.search將參數轉換爲RegExp。 /?/是無效的RegExp。轉義也不起作用,因爲字符串中的單個反斜槓不會轉換爲RegExp轉義的反斜槓。

使用indexOf代替:

location.href.indexOf('?') !== -1; // If true, then found 
+0

謝謝,一旦冷卻時間將會接受加息。 – John 2012-03-06 20:25:47

1

您需要爲"?".search()被發現提供一個正則表達式模式:

alert(window.location.href.search(/\?/)); 
+1

謝謝,雖然客戶端我不喜歡使用正則表達式我會使用indexOf(最近PHP做了太多的PHP)。仍然你的代碼工作,謝謝! – John 2012-03-06 20:40:04

+0

沒問題。我也可以把它作爲對你的問題的評論,因爲它不是一個答案;) – 2012-03-06 21:03:51

0

其實雙轉義window.location.href.search('\\?')將工作