gpt4 book ai didi

javascript - ajax 调用后应用 Knockout 绑定(bind)

转载 作者:行者123 更新时间:2023-12-02 16:02:25 24 4
gpt4 key购买 nike

我的 View 中有以下脚本:

<script>           
MyObj.initModel(getUrl);
$(document).ready(function () {
ko.applyBindings(MyObj.viewModel, document.getElementById("someId"));
});
</script>

在 initModel(getUrl) 内部,我有 ajax 调用,成功后使用 ko.mapping.fromJS(response); 设置我的 View 模型(MyObj.viewModel);

该 viewModel 绑定(bind)到某个部分 View 。

如何仅在我的 ajax 调用完成之后之后才应用绑定(bind)?

我在 View 的脚本中尝试了类似的操作:

`$("#someId").ajaxComplete(function () { ko.applyBindings(MyObj.viewModel, document.getElementById("someId")); });`

但在这种情况下,我收到有关多次绑定(bind)到同一元素的 ko 错误。

最佳答案

$(document).ready(function () { 
var bindingCallback = function () {
ko.applyBindings(MyObj.viewModel, document.getElementById("someId"));
};

MyObj.initModel(getUrl, bindingCallback);
});

然后在你的 initModel 中,只需在 AJAX success 方法中添加类似 bindingCallback(); 的内容来调用 bindingCallback 方法即可。

关于javascript - ajax 调用后应用 Knockout 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31077030/

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