jquery – 使用Knockout.js绑定bootstrap daterange选取器和解析span内容

我是淘汰赛的新手,并试图让这项任务成为一项简单的任务.我正在开发一个MVC4 .NET应用程序,目的是绑定一个日期范围选择器来发出更新Highchart图数据的ajax请求.我正在使用Dan Grossman的自助式主题日期选择器,到目前为止它一直都很棒( https://github.com/dangrossman/bootstrap-daterangepicker).

基本目标是观察此jQuery日期游侠选择器更新的范围,然后使用knockout将此值传递给应用程序的另一部分以获取ajax请求.

我已经尝试了我可以在网上找到的所有内容.. valueUpdate:更改跨度以在knockout中使用一些jQuery来完成相同的目标,使用subscribe函数在使用日期选择器之前和之后观察跨度的值.显然,这使用了jQuery .change()事件处理程序,它只对输入,选择和textareas有好处..而不是跨越.

这是我到目前为止的小提琴:http://jsfiddle.net/eyygK/9/

感谢任何帮助和输入.

解决方法

更新新的日期范围时,您只需更新视图模型中的currDaterange属性.

$('#reportrange').daterangepicker({
    ...,function (start,end) {
        var daterangeText = start.toString('MM/d/yy') + ' - ' + end.toString('MM/d/yy');
        vm.currDaterange(daterangeText);
    }
});

因此,当您更新日期范围时,它会将其报告给淘汰赛,淘汰赛将更新所有使用它的地方,即跨度.

现在您可以订阅currDaterange,并从那里进行Ajax调用.

self.currDaterange = ko.observable("09/24/12 - 09/24/12");
self.currDaterange.subscribe(function(newValue) {
   $.ajax({...});
});

这样,更新来自何处并不重要,淘汰赛将通知所有人.

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: <span id=&quot...
jQuery 添加水印 <script src="../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...