2014-01-24 41 views
0

我有使用CI的form_dropdown拉動從DB的陣列的形式....笨form_dropdown選定值

$osValue = 'id = "osValue"'; 
echo form_dropdown('os', $os, '', $osValue); 

其中,檢查所述元素時,是在用戶代理如下...

<select name="os" os> 
<option value="1">Windows XP 32-bit</option> 
<option value="2">Windows XP 64-bit</option> 
<option value="3">Windows Vista 32-bit</option> 
<option value="4">Windows Vista 64-bit</option> 
<option value="5">Windows 7 32-bit</option> 
<option value="6">Windows 7 64-bit</option> 
<option value="7">Server 2003 32-bit</option> 
<option value="8">Server 2003 64-bit</option> 
<option value="9">Server 2008 32-bit</option> 
<option value="10">Server 2008 64-bit</option> 
<option value="11">Linux</option> 
</select> 

我遇到麻煩的是能夠將SELECTED值傳遞給變量。

我得到的所有選項返回,使用時

var os = $('#osValue').html(); 

var os = $('#osValue').text(); 

而且,只有值(由DB通過在一個數字串)返回使用

var os = $('#osValue').val(); 

爲了只返回選定的值,必須有一小部分或兩個部分丟失。任何/所有的建議或幫助將不勝感激。先謝謝你!

+0

首先,'<選擇name = 「操作系統」 OS>'似乎有缺陷,確保'form_dropdown()'正常工作。其次,'.val()'有什麼問題? –

+0

我無法分配ID,因爲此信息由CodeIgniter填充,但沒有ID選項。 – jbeckom

回答

1

你有幾個問題:

1)上有選擇沒有ID,但你要查詢的ID(你在那裏也有一個外的地方「OS」; <select name="os" os>是無效)

2)你是不是想找哪個選項已經被選中

要解決,給選擇id

<select name="os" id="os"> 
    <option value="1">Windows XP 32-bit</option> 
    <option value="2">Windows XP 64-bit</option> 
    <option value="3">Windows Vista 32-bit</option> 
    <option value="4">Windows Vista 64-bit</option> 
    <option value="5">Windows 7 32-bit</option> 
    <option value="6">Windows 7 64-bit</option> 
    <option value="7">Server 2003 32-bit</option> 
    <option value="8">Server 2003 64-bit</option> 
    <option value="9">Server 2008 32-bit</option> 
    <option value="10">Server 2008 64-bit</option> 
    <option value="11">Linux</option> 
</select> 

和查詢從jQuery的:

var osval = $('#os option:selected') 

,或者按名稱查詢:

var osval = $('[name="os"] option:selected') 

http://jsfiddle.net/5Vmxd/

+0

感謝您對此提供的幫助...只需將「選項:選中」添加到jquery變量中,就可以完美地爲我完成這項工作! – jbeckom