2016-12-04 56 views
0

我試圖創建一個工作函數,將隱藏基於特定值的特定選擇選項。選項不會有類或ID,所以我需要使用選項值作爲標識符。添加隱藏屬性來選擇基於選項值的選項

有沒有人看到這個功能的問題?

function delivery_rate(valMap) { 
    if(valMap === 5000){ 
     $(".addon-select option[value="1-day-1"]").setAttribute("hidden", true); 
    } 
} 
+0

我看到的問題是,'hidden'不是[''

+0

@DavidThomas嗨,它不起作用。我以爲隱藏是一個有效的html5屬性。這行代碼打破了我腳本的其餘部分 - '$(「。addon-select option [value =」1-day-1「]」)。setAttribute(「hidden」,true);' – nickyb

+0

因爲你有'' '在你用'''字符分隔的字符串中,或​​者轉義字符串中的字符('\「')或者使用'''字符來包裝字符串。另外'setAttribute()'是標準的JavaScript,而不是你選擇的jQuery對象的有效jQuery方法。 –

回答

0

不是應用了隱藏的選項標籤,建立不同版本的<select>和設置都被隱藏。當用戶選擇一個符合<select>標籤標準的值時,請顯示該特定標籤。

<select name="select" class="first-select"> 
    <option value="value1">Value 1</option> 
    <option value="value2" selected>Value 2</option> 
    <option value="value3">Value 3</option> 
</select> 

<select name="select" class="second-select"> 
    <option value="value4">Value 1</option> 
    <option value="value5" selected>Value 2</option> 
    <option value="value6">Value 3</option> 
</select> 
+0

我很欣賞這個建議,但選擇輸入是由woocommerce插件動態創建的,這就是爲什麼我需要能夠針對特定選項。 – nickyb

+0

你可以修改插件,只顯示你想使用PHP的選項,而不是隱藏使用CSS/JS的元素? –

+0

它只適用於50種不同的產品中的一種。所以我試圖不通過編輯源代碼來解決該插件的問題。 – nickyb