2012-07-13 165 views
0

嘿朋友。 我有一個從選擇框(HTML)獲取最大值和最小值的問題。 我想從jQuery或JavaScript的選擇框中獲取MAX和MIN值。從選擇框中獲取最大值,最小值Jquery

這是標記,簡單範圍滑塊。

$('#slider').slider({ 
     range: true, 
     min: 0,//HERE I WANT TO GET VALUES 
     max: 40, 
     step: 10, // Use this determine the amount of each interval 
     values: [ 20, 40 ], // The default range 
     slide: function(event, ui) { 
      // for input text box 
      $("#amount").val(ui.values[ 0 ] + " - " + ui.values[ 1 ]); 
      // Display and selected the min Price 
      $("#my_min").val(ui.values[ 0 ]); 
      // Display and selected the max Price 
      $("#my_max").val(ui.values[ 1 ]); 
    } 
}); 

我想從選擇框中獲取它們,選擇框將被PHP動態填充。 這裏是代碼:

<select id="my_min" class="price_range"> 
<?php //dynamicly filled options 

     while($row=mysql_fetch_array($query)) 
      {echo "<option>".$row['values']."</option>";} 


?> 
</select> 

感謝您的幫助。

+0

你可以張貼 「選項」 標籤標記? – Gntem 2012-07-13 10:20:36

+0

我添加了選項標籤 – 2012-07-13 10:30:05

回答

0

您的問題不明確。兩種解釋方式:

1.您希望javascript知道選擇框的最小值和最大值。

您可以使用:

var options = document.getElementById('yourselectbox').childNodes; 
var min = 999999999; 
var max = 0; 
for(var i = 0; i < options.length; i++) { 
    if(options[i].value > max) max = options[i].value; 
    if(options[i].value < min) min = options[i].value; 
} 

2.您希望服務器知道JavaScript的最大值和最小值。

DOM由服務器構建,即構建HTML。 HTML包含定義最小值和最大值的javascript。當通過POST將數據發送回服務器時,只會發送SET值。通常,最小值和最大值對服務器無關緊要。如果您想要發送最小值和最大值,則必須使隱藏的輸入字段包含這些值。但是,你爲什麼?您是否定義了最小值和最大值?

- 編輯 -

var options = document.getElementById('yourselectbox').childNodes; 
var min = 999999999; 
var max = 0; 
for(var i = 0; i < options.length; i++) { 
    if(options[i].value > max) max = options[i].value; 
    if(options[i].value < min) min = options[i].value; 
} 
$('#slider').slider({ 
     range: true, 
     min: min, 
     max: max, 
     step: 10, // Use this determine the amount of each interval 
     values: [ 20, 40 ], // The default range 
     slide: function(event, ui) { 
      // for input text box 
      $("#amount").val(ui.values[ 0 ] + " - " + ui.values[ 1 ]); 
      // Display and selected the min Price 
      $("#my_min").val(ui.values[ 0 ]); 
      // Display and selected the max Price 
      $("#my_max").val(ui.values[ 1 ]); 
    } 
}); 
+0

我想使用第一個選項。 – 2012-07-13 10:23:17

+0

你能告訴我如何得到var min和var max爲$('#slider')。slider function? – 2012-07-13 10:42:00

+0

完成,看到我的更新 – rsplak 2012-07-13 11:31:37

0

取決於$行[「值」]格式,你可以得到最大值和最小值這樣 首先獲得所有選項的文本到一個數組中,並通過爲INT與parseInt函數()然後做

OptionsArray.maximum = function(ArrayParameter){ 
return Math.max.apply(Math, ArrayParameter); 
}; 

OptionsArray.minimum = function(ArrayParameter){ 
return Math.min.apply(Math, ArrayParameter); 
}; 

console.log('Maximum is '+OptionsArray.maximum); 
console.log('Minimum is '+OptionsArray.minimum); 

希望它幫助