gpt4 book ai didi

knockout.js - 使用数据绑定(bind)提交,sammy.js 和 knockout.js 一起进行奇怪的重定向

转载 作者:行者123 更新时间:2023-12-03 13:14:29 25 4
gpt4 key购买 nike

我的页面上有这样的表格:

<form data-bind="submit: AddFolder"></form>

如果我的 JS 脚本中有这段代码(当然我已经删除了所有不相关的代码并进行了测试以确保我仍然可以只使用这段代码重新创建,通常你会在这里有更多的代码,比如 .get 和 .post职能):
Sammy(function() {
}).run();

提交表单后,页面重定向到一个奇怪的 URL,如 ?ko_unique=1
如果我从脚本中删除 Sammy 部分,则不会发生这种情况。我认为这与事件冒泡有关,Sammy 和 Knockout 都 Hook 了 onSubmit,而浏览器只尊重最后一个调用函数的返回值。

最佳答案

经过大量搜索,并没有在这里找到任何答案,我最终找到了这个:

https://groups.google.com/forum/?fromgroups#!topic/sammyjs/EYW-2Ygk3z8

并将我的代码修改为:

Sammy(function() {

// Override this function so that Sammy doesn't mess with forms
this._checkFormSubmission = function(form) {
return (false);
};

}).run();

这样当我在我的页面上提交表单时,Sammy 就不会尝试做任何特别的事情。由于我使用的是 Knockout,因此我不打算将 Sammy 用于任何形式。如果您想要更复杂的代码或插件版本,您可以查看上面的 URL,但对我来说,我怀疑对于大多数使用 KO 的人来说,禁用这个 Sammy 功能会更少代码,更容易。

关于knockout.js - 使用数据绑定(bind)提交,sammy.js 和 knockout.js 一起进行奇怪的重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14861461/

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