2014-01-17 35 views
1

我無法從我的下拉菜單中啓用選項。由於一些奇怪的原因,我可以禁用,但不能恢復。有沒有解決這個問題?我正在使用SharePoint 2007如何從下拉菜單重新啓用選項

$(document).ready(function() 
if($("#ctl00_m_g_98b27f90_2d47_4399_9f55_39944c5c3d72_ctl00_ctl04_ctl23_ctl00_ctl00_ctl04_ctl00_DropDownChoice option[value='Validating']")){ 
$("#ctl00_m_g_98b27f90_2d47_4399_9f55_39944c5c3d72_ctl00_ctl04_ctl23_ctl00_ctl00_ctl04_ctl00_DropDownChoice option[value='Analysis']").attr("disabled", "disabled"); 
} 
else  
if($("#ctl00_m_g_98b27f90_2d47_4399_9f55_39944c5c3d72_ctl00_ctl04_ctl23_ctl00_ctl00_ctl04_ctl00_DropDownChoice option[value='Resolving']")){ 

$("#ctl00_m_g_98b27f90_2d47_4399_9f55_39944c5c3d72_ctl00_ctl04_ctl23_ctl00_ctl00_ctl04_ctl00_DropDownChoice option[value='Analysis']").removeAttr("disabled"); 
} 
}); 
+2

爲什麼地球上你有這樣的ID? –

回答

3
$("#ctl00_m_g_98b27f90_2d47_4399_9f55_39944c5c3d72_ctl00_ctl04_ctl23_ctl00_ctl00_ctl04_ctl00_DropDownChoice option[value='Validating']") 

是一個jQuery對象,這始終是一個truthy值(即使什麼也沒有選擇)。因此,總是執行第一個if語句。

而是使用$('blah').length來確定是否選擇了任何東西。

雖然聖牛,找到一個更好的方式來確定你的DOM。

+0

你說一個有趣的,所以你得到da upvotes – user1596138

+0

這對我來說甚至不好笑我幾乎被那個標記冒犯 –

+1

看起來這些ID是動態生成的一個叫做SharePoint的微軟軟件:) – undefined

0

您錯過了ready回調的開頭括號。

$(document).ready(function() { <--- here 
    if($("#ctl00_m_g_98b27f90_2d47_4399_9f55_39944c5c3d72_ctl00_ctl04_ctl23_ctl00_ctl00_ctl04_ctl00_DropDownChoice option[value='Validating']")){ 
     $("#ctl00_m_g_98b27f90_2d47_4399_9f55_39944c5c3d72_ctl00_ctl04_ctl23_ctl00_ctl00_ctl04_ctl00_DropDownChoice option[value='Analysis']").attr("disabled", "disabled"); 
    } 
    else if($("#ctl00_m_g_98b27f90_2d47_4399_9f55_39944c5c3d72_ctl00_ctl04_ctl23_ctl00_ctl00_ctl04_ctl00_DropDownChoice option[value='Resolving']")){ 
     $("#ctl00_m_g_98b27f90_2d47_4399_9f55_39944c5c3d72_ctl00_ctl04_ctl23_ctl00_ctl00_ctl04_ctl00_DropDownChoice option[value='Analysis']").removeAttr("disabled"); 
    } 
}); 
+0

'else'語句是一個'else if'語句哈哈。他不會錯過任何東西。 – user1596138

+1

噢,那個換行符是非常誤導性的 –

+0

我一開始也很困惑 – user1596138

相關問題