2015-09-17 58 views
-1

我對JavaScript很新穎,我一直在擺弄下面的這個下拉菜單。Bootstrap下拉得到值

<form id="bootstrapSelectForm" method="post" class="form-horizontal"> 
     <div class="form-group"> 
     <label class="col-xs-3 control-label">Time period</label> 
     <div class="col-xs-5 selectContainer"> 
      <select name="time" class="form-control"> 
       <option value="all">All</option> 
       <option value="1month">1 month</option> 
       <option value="2months">2 months</option> 
       <option value="3months">3 months</option> 
       <option value="6months">6 months</option> 
      </select> 
     </div> 
     <button type="submit" class="btn btn-primary btn-sm">Ok</button> 
    </div> 
</form> 

<script type="text/javascript"> 
    function submitClick() { 
     // Somehow fetch data from dropdown 
    } 
</script> 

我想要做的是「提交」按鈕,點擊時,檢索所選項目的名稱/值在下拉列表中,然後做與價值的東西。但我有點迷失在從哪裏開始,並且任何提示或幫助都非常感謝。

+0

在我看來,你還沒有嘗試任何JS。 –

+0

這是因爲沒有太多的JS去。我已經更新了OP。 – Khaine775

回答

1

將會有一個事件傳遞給表單提交函數,該函數將包含事件數組屬性中表單的所有字段。您可以通過console.log(event)查看該事件以瞭解這些屬性。在你的情況下,select字段實際上是事件的屬性數組中的第一個元素,因爲它是第一個表單元素。

所以,你要更多的東西是這樣的:

<script type="text/javascript"> 
    function submitClick(event) { 
     //prevent the page from posting when you submit the form 
     event.preventDefault(); 

     //print the value of the select field 
     console.log(event[0]); 
    } 
</script> 

另一件事要記住的是,你必須將事件偵聽器添加到窗體此功能來觸發。因此,在你的代碼的某個地方,你會需要這樣的東西:

document.getElementById("bootstrapSelectForm").addEventListener("submit", submitClick); 
1

在此請看:Get selected value in dropdown list using JavaScript? 我建議你看一看jQuery的太爲更簡單,更容易理解。例如獲取一個下拉的值可以用一行簡單的代碼完成。 是這樣的: $('#id_of_select_tag').find('option:selected').val();