0

我有以下代码:

 $.modal({
                    title: title,
                    closeButton: true,
                    content: content,
                    complete: function () {
                        applyTemplateSetup();
                        $('#main-form').updateTabs();
                        $('#main-form').data('action',action);
                        // updated to line below but still does not work
                        $('#main-form').data('action','Edit');
                    },
                    width: 900,
                    resizeOnLoad: true,
                    buttons: {
                        'Submit': function (win) {
                            formSubmitHandler($('#main-form')); 
                        },
                    }

加载数据后,我将尝试设置数据属性操作。然后我有更多的代码在提交处理程序中读取它:

var formSubmitHandler = function (form) {

    //e.preventDefault();
    var $form = form;
    var val = $form.valid();
    if (!$form.valid || $form.valid()) {

        var submitBt = $(this).find('button[type=submit]');
        submitBt.disableBt();
        var sendTimer = new Date().getTime();

        $.ajax({
            url: $form.attr('action'),
            dataType: 'json',
            type: 'POST',
            data: $form.serializeArray(),
            success: function (json, textStatus, XMLHttpRequest) {
                json = json || {};
                if (json.success) {
                    if ($form.data('action') == "Edit") {
                        $('#modal').removeBlockMessages()
                        submitBt.enableBt();
                    } else {

但是,似乎值设置不正确,因为当我单步执行代码时,这并没有得到真正的值:$form.data('action') == "Edit".我做错了什么吗?

4

1 回答 1

0

这可能是问题所在。

首先你做 -$('#main-form').data('action',action);
我不完全确定action变量包含什么,但是从你的代码行 -url: $form.attr('action')我将假设你正在给表单action值。你为什么这样做是你关心的,但我相信它不会== "Edit"

你得到什么价值$form.data('action')

于 2012-04-27T05:03:15.060 回答