首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ko.bindinghandlers.with在IE8中失败

ko.bindinghandlers.with在IE8中失败
EN

Stack Overflow用户
提问于 2013-11-26 22:51:49
回答 1查看 228关注 0票数 2

我有一个用于集成jQuery UI对话框小部件的定制绑定,该绑定基于Ryan对此的回答:integrating jquery ui dialog with knockoutjs

在调用Dialog小部件之后,我希望绑定"with“绑定,如下所示:

代码语言:javascript
复制
ko.bindingHandlers.annotatePanel = {
init: function (element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
    setTimeout(function() {
        $(element).dialog({
            autoOpen: false,
            modal: true,
            width: 840,
            resizable: false,
            close: function() {
                var data = valueAccessor();
                if (ko.isWriteableObservable(data)) {
                    data(null);
                }
            }
        });
    },0);

    //ko.applyBindingsToNode(element, { 'with': valueAccessor() }, bindingContext);
    //ko.bindingHandlers["with"].init.apply(this, arguments);
    ko.bindingHandlers.with.init.apply(element, valueAccessor(), allBindingsAccessor, viewModel, bindingContext);
},

这在Chrome和FireFox中很好,但在IE8中,我得到了以下错误:

“预期标识符.”

如果我将代码更改为使用以下任何一种:

代码语言:javascript
复制
ko.applyBindingsToNode(element, {'with': valueAccessor()}, bindingContext);

or

ko.bindingHandlers["with"].init.apply(this, arguments);

我不会犯任何错误。

我怀疑这与" with“是IE关键字的事实有关。

如果这是一个已知的问题,有人能提出建议吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2013-11-27 07:32:47

正如莱恩所说,

如果您需要IE兼容性,不要使用保留字作为属性名。解决办法是使用以下语法:

代码语言:javascript
复制
ko.bindingHandlers['<bindingName>'].init....
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20229687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档