Jquery 击倒JS中的字段下降

Jquery 击倒JS中的字段下降,jquery,knockout.js,Jquery,Knockout.js,我面临一个问题,即使用knockout js将数据绑定到多个字段。 我发现这是代码造成的。这段代码不是我写的,所以我无法理解背后的原因。 有人能解释一下吗 ko.bindingHandlers.isolatedOptions = { //element, valueAccessor, allBindings, viewModel, bindingContext init: function (element, valueAccessor) { var args = arguments;

我面临一个问题,即使用knockout js将数据绑定到多个字段。 我发现这是代码造成的。这段代码不是我写的,所以我无法理解背后的原因。 有人能解释一下吗

ko.bindingHandlers.isolatedOptions = {
//element, valueAccessor, allBindings, viewModel, bindingContext
init: function (element, valueAccessor) {
    var args = arguments;
    ko.computed({
        read: function () {
            ko.utils.unwrapObservable(valueAccessor());
            ko.bindingHandlers.options.update.apply(this, args);
        },
        owner: this,
        disposeWhenNodeIsRemoved: element
    });
},
update: function (element, valueAccessor)
{
    var args = arguments;
    ko.computed({
        read: function ()
        {
            ko.utils.unwrapObservable(valueAccessor());
            ko.bindingHandlers.options.update.apply(this, args);
        },
        owner: this,
        disposeWhenNodeIsRemoved: element
    });
}};
这就是它的使用方式:

<select data-bind="isolatedOptions: $root.procurementTypes, optionsText: 'Display', optionsValue: 'ItemValue', optionsCaption: 'Select...', value: $data.PROCURE_TY, visible:$root.s1display([6,1])() === 2 && $root.workflowStepDescription().statusCode !== 'NIP'"></select>

此代码正在为html代码创建名为isolatedOptions的自定义绑定,用于单击、更改、默认值等内置绑定。它必须在代码中使用某些HTML元素的数据绑定属性

在这里查看更多信息


元素为select,valueAccessor为$root.procurementTypes。在设置元素select的初始状态时调用init。它接受参数并运行init函数。如果您使用的是可观察的或计算的东西,并且有变化,那么击倒js可以多次调用update。它最初也是在应用绑定时调用的。

我面临的一个问题是,MaterialType字段没有在fiddle中从AJAX[link]加载表单时填充。MaterialType是从AJAX设置的,设置的数据需要填充到MaterialType占位符。基本上,这就像在knockout中将数据绑定到属性一样好。它只是一个字段还是多个字段。我建议提出另一个问题,并在那里分享同样的代码。这将有助于轻松确定根本原因。