2013-05-07 13 views
0

在我正在使用的jQuery函數中,我使用.get返回一些XML數據&然後用它填充下拉框。我用它來建立在選擇<OPTION>標籤的代碼如下:jQuery下拉框總是顯示第一項

$.get(sURL, function(data) { 
    var select = $("#dList"); 
    $(data).find("Row").each(function() { 
    var mgid = $(this).find("MessageGroupID").text(); 
    var gname = $(this).find("GroupName").text(); 
    var option = $("<option>" + gname + "</option>"); 
    option.attr("value", mgid); 
    select.append(option); 
    }); 
}); 

正被解析的XML是:

<?xml version="1.0" encoding="UTF-8"?> 
<Rowsets DateCreated="2013-05-07T11:33:51" EndDate="2013-05-07T11:33:51" StartDate="2013-05-07T10:33:51" Version="1.1.1"> 
<Rowset> 
<Columns> 
<Column Description="MessageGroupID" MaxRange="1" MinRange="0" Name="MessageGroupID" SQLDataType="4" SourceColumn="MessageGroupID"/> 
<Column Description="GroupName" MaxRange="1" MinRange="0" Name="GroupName" SQLDataType="12" SourceColumn="GroupName"/> 
</Columns> 
<Row> 
<MessageGroupID>1</MessageGroupID> 
<GroupName>First Shift</GroupName> 
</Row> 
<Row> 
<MessageGroupID>4</MessageGroupID> 
<GroupName>Alternate First Shift</GroupName> 
</Row> 
<Row><MessageGroupID>7</MessageGroupID> 
<GroupName>Temporary First Shift</GroupName> 
</Row> 
</Rowset> 
</Rowsets> 

我調用該函數加載的下降在文檔中了。準備好腳本的一部分。

當返回3行時,第一行始終顯示在下拉框中。或者,如果我在前面加上一個空行:

var blankline = $("<option value='' selected='selected'></option>"); 

我得到的空白下拉框,但現在在下拉4項(空白+ 3我應該有)。我認爲設置selectedindex = -1會這樣做,但它不起作用,因爲這些項目不是靜態的。

如何獲得下拉框同時具有空白/空顯示值,並且在實際選項列表中仍然具有適當數量的項目?

謝謝!

小號

回答

1
$(document).ready(function() { 
    $('select').click(function(){ 
     $(this).children(':eq("0")').hide(); 
     $(this).unbind('click'); 
    }); 
}); // untested Code 

編輯:

請試試這個...

$('select').one('mousedown',function(){ 
    $("option:first",this).remove(); 
}); 

我自己在這混亂..這對SO最後asked終於如願以償美麗的答案..

+0

這似乎工作好嗎在Fi refox,但在IE瀏覽器中沒有。谷歌瀏覽器做了一些不同的事情 - 它隱藏了下拉列表中的空行,但它不會重新整理列表。最後一個項目會重複,除非再次點擊下拉菜單,但它不可選。沒有什麼是拋出我看到的錯誤。任何想法爲什麼它的行爲如此? – 2013-05-07 17:59:51

+0

立即檢查... – writeToBhuwan 2013-05-07 18:44:26

+0

謝謝。它現在在所有3種瀏覽器中似乎都表現得相似。然而,在下拉菜單中,當它被點擊時,該框會自動填入第一個條目,這幾乎回到最初問題的來源。現在閱讀你的帖子。 – 2013-05-07 19:09:55

相關問題