2012-03-10 56 views
0

我是jQuery noob,因此,我一直在努力弄清楚一個簡單的問題。jQuery - 在存儲之前對Var進行更改

如何更改從網頁上的輸入框中拉出的id = days的值。有一個UI滑塊可以改變輸入框的值。

該值正基於滑塊/輸入框中列出的天數計算當前和未來日期。

var $days = $("#days"); 

變量上面可以說是3 .....我想通過7乘3 .....爲$天的值現在是21 jQuery的日曆應該吐出正確的日期。

最終的結果...滑塊的每一步都會=1周

謝謝...

編輯增加了更多的信息.​​.....這應該是大多數使用的所有代碼日曆。

var date = new Date(baseDate.getTime()); // Calculate the new date 
    date.setDate(date.getDate() + $days.val()); 
    $datepicker.datepicker('setDate', date); // And set into the datepicker 
    $datepicker.datepicker({ 
    buttonImageOnly: true 
    }); 

依路大感謝您的快速反應.....

注意日曆隱藏所以他們沒有與壓光的相互作用。

+1

上面的代碼將變量'$ days'設置爲一個jQuery對象,它代表'''id'爲'days'的DOM元素...以獲得需要使用'val()'的值...但我仍然不明白你的問題......你想達到什麼目的? – ManseUK 2012-03-10 11:09:08

+0

我爲你演示了一個小小的演示:) – gideon 2012-03-10 11:27:27

回答

0

感謝您的所有幫助人員和gals ....您給m Ë一些偉大的想法,並與我解決了我的問題。

解決方案是......

date.setDate(date.getDate() + [7 * $days.val()]); 

繼承人的修改後的代碼...

 var date = new Date(baseDate.getTime()); // Calculate the new date 
    date.setDate(date.getDate() + [7 * $days.val()]); 
    $datepicker.datepicker('setDate', date); // And set into the datepicker 
    $datepicker.datepicker({ 
      buttonImageOnly: true 
    }); 

即使世界不止一種方法對皮膚一隻貓。如果您有更好或更合適的解決方案,請發佈。

0

我沒有完全理解你想要什麼,但如果你想訪問你應該這樣做的輸入框的值:如果你想抓住的輸入框的當前值

var days = $('input#days').val(); 
0

用id =天,然後用下面的代碼行:

var days = $('#days').val(); 

或在您的情況

var $days = $('#days'); // cache object 
var days = $days.val(); 
0

什麼AR你試圖做什麼?從現在開始獲取($天* 7)天的日期?

您可以訪問和更改輸入字段就像任何其他的js變量值,

var $days = $("#days").val(); 
$days = $days*7; 
alert($days); 

這應該給你21!

+0

我給了它一個鏡頭,但它被轟炸了,我會在明天工作一下.....謝謝。 – 2012-03-10 12:05:47

1

要獲得id=days一個輸入框的值,你可以使用:

var $days = $("#days").val(); 

我會根據您的問題,一個小演示,看到住在這裏:http://jsfiddle.net/PQkFP/

$(function() { 
    $("#slider").slider({ 
    slide: function(event, ui) { 
      var days = $("#slider").slider("value"); 
      $("#days").val(days); 
      // you can see $.datepicker('setDate', <number of days>); 
      $("#datepicker").datepicker("setDate",(days*7)); 
     } 
    }); 
}); 

$(function() { 
    $("#datepicker").datepicker(); 
});​ 

HTML片段:

<head> 
    <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/ 
         1.8/themes/base/jquery-ui.css"> 
    <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/ 
         1.8/themes/ui-darkness/jquery-ui.css"> 
    <script> 

    </script> 
</head> 
<div class="demo"> 

<div id="slider"></div> 
    Days : <input type="text" value="" id="days" /> 
<div id="datepicker"></div> 
</div> 
​ 
+0

不客氣@RichardMax。考慮接受答案,如果它有幫助。見[如何接受工程](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work) – gideon 2012-03-10 11:55:51

+0

感謝您的幫助,仍然吸收你編碼的東西,弄清楚這是怎麼回事可以幫助我解決我的問題。對我來說這是一個試驗和錯誤......估計腳本中有這麼多東西,我必須小心不要改變,因爲它會污染腳本的其他部分.....需要得到一些睡眠將明天再次檢查....再次感謝評論的每個人。 – 2012-03-10 12:01:38

+0

我直接從文件中添加了一些附加代碼....它會給你一個更清晰的圖像...你的代碼看起來很棒,我嘗試使用(「setDate」,(days * 7) );在我的代碼中,但它被轟炸出來將在明天工作。 – 2012-03-10 12:04:43

相關問題