我填充使用這種方法JQuery的刷新選擇框
$('#select').append('<option value="' + result + '">' + result + '</option>');
然而這留下選擇框的頁面加載使用JQuery一個選擇欄「空白」,即在選項列表中的第一個值不預先選擇選定的選項。
我如何「刷新」這個名單以便第一值預選?
對不起 - 應該說這是jQuery手機之前
謝謝。
我填充使用這種方法JQuery的刷新選擇框
$('#select').append('<option value="' + result + '">' + result + '</option>');
然而這留下選擇框的頁面加載使用JQuery一個選擇欄「空白」,即在選項列表中的第一個值不預先選擇選定的選項。
我如何「刷新」這個名單以便第一值預選?
對不起 - 應該說這是jQuery手機之前
謝謝。
您可以添加一個「選擇」屬性來選擇元素,您想選擇:
$('#select')
.append('<option value="' + result + '" selected="selected">' + result + '</option>');
你不指定如何填充正是你選擇元件,使用一個循環,你可以這樣做:
var data = ['a', 'b', 'c'];
var $select = $('#select'); // you might wanna empty it first with .empty()
for (var i = 0; i < data.length; i++) {
var o = $('<option/>', { value: data[i] })
.text(data[i])
.prop('selected', i == 0);
o.appendTo($select);
}
因此,看來你正在使用jQuery Mobile的就像你在評論中所說的那樣。
如果您使用的是selectmenu 部件,你需要你做出編程更改其內容/結構之後以編程方式刷新:
$select.selectmenu("refresh", true);
簡單..你設置任何你想要的值,即:$('#select').val(5);
..所以你的情況下,其$('#select').val(result);
編輯:包括一個完整的工作示例:
<script type='text/javascript' src='http://code.jquery.com/jquery-1.6.4.js'></script>
<select id='select'></select>
<br>
<input type=button onclick='addNew()' value='Add'>
<script>
function addNew()
{
var result = Math.floor(Math.random()*1000);
$('#select').append('<option value="' + result + '">' + result + '</option>');
$('#select').val(result);
}
</script>
恐怕不是解決它,還是空預選選項:( – user1202278 2012-02-21 16:04:35
我已經更新了答案從一個工作示例 – Ashraf 2012-02-21 16:16:02
也許這是jQuery Mobile的形式選擇字段一個問題,因爲沒有這些例子是預先選擇的值,是在T帽子(例如在iPhone上,當您查看選擇時,在所選值旁邊會出現一個藍色標記),但在加載時,選擇框爲白色。很奇怪。 – user1202278 2012-02-21 16:28:43
並非所有瀏覽器自動刷新選擇添加新選項後。
一招這對我的作品被隱藏和顯示只是添加新的選項,之後選擇框。所以你的情況:
$('#select').append('<option value="' + result + '">' + result + '</option>').hide().show();
至於選擇正確的新增選項,遵循:
$('select').val(result);
您可以使用
$('#select').removeAttr('selected').find('option:first').attr('selected', 'selected');
也許這是JQuery移動表單選擇字段的一個問題,因爲這些示例都沒有提前選擇一個值,是的(例如,在iPhone上,當您查看選擇時,接下來會出現藍色記號)到選定的值),但在加載時,選擇框是白色的。很奇怪。 – user1202278 2012-02-21 16:28:32
也許這是JQuery移動表單選擇字段的一個問題,因爲這些示例都沒有提前選擇一個值,是的(例如,在iPhone中,當您查看select時,在所選值旁邊會出現一個藍色記號)但在加載時,選擇框是白色的。很奇怪。 – user1202278 2012-02-21 16:28:19
你應該指定你正在使用jquery mobile,這是非常重要的信息!你在使用selectmenu小部件嗎? – 2012-02-21 16:32:57
我已經編輯了我的答案。 – 2012-02-21 16:40:47