gpt4 book ai didi

knockout.js - 如何使用 knockout.js 启用或禁用按钮

转载 作者:行者123 更新时间:2023-12-04 01:00:12 25 4
gpt4 key购买 nike

当用户单击按钮并且服务器正在处理一些数据时,我想使用 knockout.js 禁用按钮。我在看 example在 knockout 教程中,但似乎缺少一些东西。

我有 enable:参与data-bind :

<body>
<form id="form1" runat="server" >
<h1 style="text-align: center">Select the item(s) you want.</h1>
<br />
<br />
<div id="buttons" style="text-align: center">
<button data-inline="true" data-bind="click: submit, enable: canSubmit" >Submit</button>
<button data-inline="true" data-bind="click: cancel">Cancel</button>
</div>

我已将 View 模型中的 observable 设置为 false。但是,按钮是
初始化 View 时在页面上启用。所以我认为这是一个数据绑定(bind)问题。
function ViewModel() {
var self = this;
self.selectedItems = ko.observableArray([]);
// we should start off not being able to click the submit button
self.canSubmit = ko.observable(false);
};

我希望在用户单击提交按钮之前启用该按钮,然后在服务器完成操作之前禁用它。
self.submit = function () {
// disable submit button
self.canSubmit = false;
// do stuff
self.canSubmit = true;
};

如何绑定(bind) enable按钮的可观察值?

最佳答案

您错误地将您的 observable 替换为直接的 js 变量。 canSubmit是一个 observable,所以通过调用函数来改变它的值:

self.submit = function () {
// disable submit button
self.canSubmit(false);
// do stuff
self.canSubmit(true);
};

其余的都很好。

关于knockout.js - 如何使用 knockout.js 启用或禁用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28879813/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com