javascript - Knockout JS 和 jQuery UI Dialog 的 title 属性

标签 javascript mvvm knockout.js

绑定(bind) jQuery UI 的 Dialog 标题属性的最佳方法是什么?最初,在 ko.applyBindings ,KO成功更新title属性。但是,在 .dialog() 之后被调用,绑定(bind)丢失。

见 fiddle :http://jsfiddle.net/jordanarseno/YFBsQ/4/

我可以手动观察 keyup 的文本框并使用以下方法更改标题:

$("input").live("keyup", function(){
    $("#dialog").dialog( "option", "title", $(this).val());
});

但是,如果可能的话,我想摆脱它并遵循更多的 knockout 惯例。

这里最好的方法是什么?问题是关于 title 属性,但理论上它可以应用于任何 Dialog 的选项......

最佳答案

您可以尝试使用自定义绑定(bind):

ko.bindingHandlers.ko_dialog = {
    init: function (element, valueAccessor) { 
        $(element).dialog({title: ko.utils.unwrapObservable(valueAccessor())});

    },
    update: function (element, valueAccessor) {
        $(element).dialog("option", "title", ko.utils.unwrapObservable(valueAccessor()));
    }
};

并以这种方式调用它:
<div id="dialog" data-bind="ko_dialog: textboxinput">

我试图编辑你的 fiddle ,但由于某种原因它不能在 jsfiddle 上工作,但它可以在我的本地电脑上工作!试一试... http://jsfiddle.net/YFBsQ/31/

关于javascript - Knockout JS 和 jQuery UI Dialog 的 title 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11224359/

相关文章:

json - Swift MVVM 如何实现数组来建模

javascript - 使用 Knockout-Kendo.js 库刷新 KendoDropDown

javascript - 我应该使用 PHP 进行数学运算,还是转换为 JavaScript?

c# - 具有参数的WPF Mvvm导航

javascript - 检查单行复选框列表

c# - 对象引用未设置到对象实例,在 WPF 设计器中,位于 x :Reference

javascript - AJAX 如何在不重新加载页面的情况下工作?

asp.net-mvc - Knockoutjs 映射 fromJS 保持方法

javascript - 获取 JSON 数组中前 5 个分数值

javascript - Mobx 不会在可观察数组中的项目发生更改后重新呈现