2012-03-10 60 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

相关问题