1

私はノックアウト.jsで「with」バインディングを使用しています.ChromeとIE9ではうまく動作しますが、IE8に移行するとフォームが送信されなくなります. 「with」を削除すると、問題なく動作します。Visual Studio では、「with」キーワードは青色で、予約語であることを示しています。IE8の場合、この周りにとにかくありますか?

<form class="box clearfix" action="@Request.RawUrl" data-bind="with: members.events, form: { id: @Model.Event.Id }">


ko.bindingHandlers.form = {
    init: function (element, valueAccessor) {

        var value = ko.utils.unwrapObservable(valueAccessor());

        $(element).find('button[type=submit]:last').click(function () {

            if (typeof (value.submit) == 'function') {
                value.submit();
            } else {
                app.call({
                    type: 'POST',
                    data: $(element).serializeObject(),
                    url: $(element).attr('action'),
                    success: function (result) {

                        if (value.replace) {
                            app.updateContainerWithHtml(result);
                        } else {
                            if (value && value.id == 0 && typeof(result) == 'string') {
                                window.location.hash = result;
                            } else {
                                if (typeof (value.callback) == 'function') {
                                    value.callback(result);
                                }
                            }

                            if (value.hideSuccess == undefined && !value.hideSuccess) {
                                if (result.Url) {
                                    app.showSuccess(result.Message, function() {
                                        window.location.hash = result.Url;
                                    });
                                } else {
                                    app.showSuccess();
                                }
                            }
                        }
                    }
                });
            }

            return false;
        });

    }
};
4

1 に答える 1

2

ここで同じ問題が見つかりました

members.events.titleの代わりに のような長いデータ バインドでオブジェクトを参照する必要がありtitleました。

私のコード セクションは添付ファイル セクションのためだけだったので小さかったので、あまり面倒ではありませんでした。data-bind="'with':IE で動作させるために ko コメントで行うように、 with 、 like をエスケープしてみることができますが、それがうまくいくかどうかは疑わしいです。

于 2013-05-09T05:44:16.597 に答える