2011-07-26 165 views
0

這裏是一個單選按鈕幫助包括()

<input type="radio" class="grgrgrtgxxxxfeegrgbrg"> 

我試圖檢查單選按鈕的名稱是否有XX的HTML代碼。
這裏是我的jQuery代碼我已經寫

if($(this).prop('class').contains('xxxx')) 
           { 
           alert("Yup"); 
           } 

請告訴我它的語法錯誤。

+1

爲什麼不使用.hasClass()呢? –

+0

'prop'不會返回一個jQuery對象。 –

回答

3

contains是一個jQuery方法與要素的作品不是字符串,所以你必須使用字符串方法:

if($(this).prop('class').indexOf("xx")>-1) 
{ 
    alert("Yup"); 
} 

但正如別人說,你可以使用hasClass:

if($(this).hasClass("xx")) ... 
1

contains ISN」在JavaScript中使用字符串的方法。因爲從你的問題你真的想在一個類名稱的中間串匹配,你可以使用indexOf

if ($(this).prop('class').indexOf('xx') >= 0) 
{ 
    alert("Yup"); 
} 

請注意,您不需要jQuery的這所有,只是使用reflected property的DOM元素:

if (this.className.indexOf('xx') >= 0) 
{ 
    alert("Yup"); 
} 

className反映"class"屬性。

1
var className = $(this).attr('class'); 
int i = className.IndexOf("xx");" 
if(i > -1) 
{alert("has the xx class");} 
+0

這不是什麼OP想要... – Rafay

+0

他想檢查給定的元素是否有該類如果是的話提醒上面的代碼做同樣的我的朋友,我的鼻子部分索引包括其他人已經做了那麼,這將完成答案,只是爲了幫助和簡單我發佈了我的答案 – abhijit

+0

否OP要檢查該類是否包含/具有特定文本字符串,請參閱下面的答案以進行澄清 – Rafay