smartwizard 点击提交按钮后界面被刷新

Posted hans-z

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了smartwizard 点击提交按钮后界面被刷新相关的知识,希望对你有一定的参考价值。

项目中用到了smartwizard,对用户的入网配置进行了分步操作

这个插件给的范例中除了提供上一步下一步之外, 还可以添加其他的按钮

我这边额外添加了两个按钮,分别是提交和关闭

点击提交按钮时,异步向后台提交数据,步骤配置代码如下:

$(‘#smartwizard‘).smartWizard({
        selected: 0,
        theme: ‘dots‘,
        cycleStep: false,
        transitionEffect:‘fade‘,
        keyNavigation: false,
        showStepURLhash: false,
        toolbarSettings: {toolbarPosition: ‘bottom‘,
            toolbarExtraButtons: [btnFinish, btnCancel]
        },
        lang : {
            next: ‘下一步‘,
            previous: ‘上一步‘
        }

    });

btnFinish和btnCancel分别对应的就是上述的[提交]和[关闭] 按钮, 按钮对应的方法如下:

var btnFinish = $(‘<input type="button" id="btnFinish"></input>‘).addClass(‘btn btn-info‘).on(‘click‘, function(){    
    var mask;
    $.ajax({
        type: "POST",
        url: ‘/xxx‘,
        data: {corpId: "123"},
        dataType: ‘json‘,
        async: false,
        cache: false,
        beforeSend: function() {
            mask = layer.load(0, {
                shade: [0.7, ‘#393D49‘]
            },
            {
                shadeClose: true
            }); //0代表加载的风格,支持0-2
        },
        success: function(data) {
            var jsonData = eval(data);
            if (jsonData.code == ‘10000‘) {
                layer.alert(‘配置成功‘, {
                    icon: 1
                });
                $(‘#reportTable‘).bootstrapTable(‘refresh‘);
            } else {
                layer.alert(jsonData.msg, {
                    icon: 2
                });
            }
            layer.close(configLayer);
            layer.close(mask);
        },
        error: function(data) {
            alert("error");
            $(‘#reportTable‘).bootstrapTable(‘refresh‘);
        }
    })
});

碰到的问题:

1. 点击提交按钮和关闭按钮后, 界面被刷新

根据https://bbs.csdn.net/topics/391852021中4楼的回答

技术图片

将上面代码标红的地方修改为如下代码,问题虽好了,但是我明明有给设置value值呀.. 咋button就没名字了:最终显示效果是button有了,但是button中没有值了..

<input type="button" id="btnFinish" value="提交"></input>

解决办法是:在初始化smartWizard控件后给这两个button赋值(手动笑脸??)

我这边的分步操作的界面是放在模态框中的,当模态框打开成功后我就给两个button的value赋值

$(‘#btnFinish‘).val("提交");
$(‘#btnCancel‘).val("关闭");

 

以上是关于smartwizard 点击提交按钮后界面被刷新的主要内容,如果未能解决你的问题,请参考以下文章

为啥这个页面在IE8点“提交”没反应

提交按钮后如何重新加载谷歌recaptcha而不刷新页面? [复制]

php避免form表单重复提交

页面提交后不刷新

php防止表单重复提交的几种方法

我有个表单 点击按钮可以提交 但是回车的话只是刷新页面 请问各位大虾 这是何故 望指点一二