2013-03-19 96 views
0

由於某種原因,我無法在IE8下使用它。在Chrome中運行良好。jQuery * =選擇器不能在IE8中工作

這就是我要尋找的元素:

<input type="text" captures_name="default" name="firstname" required="S01 S02"/> 

這個jQuery的(1.9.1)我使用:

$("input[captures_name='default'][name='firstname']") //Match 

$("input[captures_name='default'][required*='S01']") //Does Not Match 

$("input[captures_name='default'][required*='S02']") //Does Not Match 

$("input[captures_name='default'][required='S01 S02']") //Does Not Match 

我希望能夠找到基於元素required屬性中的單個值。我確信我只是在看東西......有人能借給我一雙眼睛嗎?

在此先感謝您的幫助

+5

Is'nt HTML5中的'required'屬性是一個布爾屬性? – adeneo 2013-03-19 18:13:04

回答

3

根據W3C規範的HTML5所需要的屬性是一個布爾屬性,這意味着它無論是真的還是假的。

required =「required」或「」(空字符串)或空。

指定該元素是表單提交的必需部分。

所以,你可以將它像:

<input type="text" name="firstname" required /> 
<input type="text" name="firstname" required="required" /> 

它不能真正持有任何其他值,即使jQuery的可能能夠使用attr()得到這樣的值。正確的方法來檢查它或設置它將是.prop('required').prop('required', true)

換句話說,您的選擇器是基於無效標記,這不是一個好主意。

+0

我將required required更改爲required_for,現在可以使用!謝謝你的幫助。我最初報告說這不起作用,但這是一個緩存問題。 – 2013-03-19 18:44:45