[英]Set Default Value for Select by using value attribute
我有一個帶有動態創建的Selects(下拉列表)的網頁,它是由Shell CGI腳本創建的網頁:
while read line; do
textBoxValue=`printf "$line" | cut -d' ' -f1`
comboBoxValue=`printf "$line" | cut -d' ' -f2`
echo "
<div id="divId$start_id">
<input type="text" name="newTexdtBox$start_id" id="newTextBox" value='$textBoxValue' />
<select name="newComboBox$start_id" id="newComboBox" value="$comboBoxValue">
<option disabled>pls select</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="9">all</option>
</select>
<a href='javascript:void(0)' onclick='return removeThisElement($start_id)'>Remove This</a>
</div>
<a href='javascript:void(0)' onclick='return getSelects()'>getSelects</a>
"
start_id=$((start_id+1))
count=$((count + 1))
done < my_conf
每個Select對象都有自己的屬性value = $ comboBoxValue。 我想將此值屬性設置為在頁面加載時選擇的值。 建議的解決方案是( http://snipplr.com/view/67752/set-default-value-for-select-dropdown-lists-using-value-attribute/ ),但似乎不起作用,因為this.getAttribute(“ value” )不返回任何內容。
如何通過使用value屬性為Select(下拉列表)設置Default Value?
嘗試
<select name="newComboBox$start_id" id="newComboBox" value="$comboBoxValue">
<option value="" selected='selected'>pls select</option>
<option value="1">1</option>
如果您想使用jQuery解決問題
$(function(){
$('select[value]').each(function(){
$('option[value="' + $(this).attr('value') + '"]', this).prop('selected', true);
});
});
演示: 小提琴
但是最佳的解決方案是使用html標記本身解決它。 (我不知道cgi腳本),但是類似
<select name="newComboBox$start_id" id="newComboBox">
<option disabled>pls select</option>
<option #if ($comboBoxValue == 1) { selected="selected"} value="1">1</option>
<option #if ($comboBoxValue == 2) { selected="selected"} value="2">2</option>
<option #if ($comboBoxValue == 3) { selected="selected"} value="3">3</option>
....
</select>
解決方案http://snipplr.com/view/67752/set-default-value-for-select-dropdown-lists-using-value-attribute/正常運行,當我從Shell腳本渲染功能時,我只是忘記了\\符號(的getAttribute(\\ “值\\”))。
正常工作(從CGI Shell腳本渲染時):
\$(document).ready(function() {
\$('select[value]').each(function(){
\$(this).val(this.getAttribute(\"value\"));
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.