0

相同的功能正在其他页面上运行,但在这里它调用了该功能,显示警报但仍然表单提交并返回 false 不起作用.....我正在使用视图剃须刀

@using (Html.BeginForm(null, null, FormMethod.Post, new { enctype = "multipart/form-data" }))

这是我的提交按钮

<input type="submit" value="Submit" id="demo-submit-button"/> 

非常感谢

  $(function () {
        $('form').submit(function () {
            //alert($("input[type=radio]:checked").val());
            if ($("input[type=radio]:checked").val() == "True") {
                //Logo Image
                var selectedFile = $('#imgfile').val();
                if (selectedFile == "") {
                    alert('please select valid image logo for marketplace');
                    return false;
                } 
                else {
                    var fileExtension = ['jpeg', 'jpg', 'png', 'gif', 'bmp'];
                    if ($.inArray($('#imgfile').val().split('.').pop().toLowerCase(), fileExtension) == -1) {
                        alert("You are permited to select only '\n.jpeg','.jpg', '.png', '.gif', '.bmp' formats are allowed.");
                        return false;
                    }
                }

                //Screenshots
                if ($('#ssimgfile').val() == "" || $('#ssimgfile1').val() == "" || $('#ssimgfile2').val() == "") {
                    alert('please select valid screenshots for marketplace');
                    return false;
                }
                else {
                    var fileExtension = ['jpeg', 'jpg', 'png', 'gif', 'bmp'];
                    if ($.inArray($('#ssimgfile').val().split('.').pop().toLowerCase(), fileExtension) == -1 || $.inArray($('#ssimgfile1').val().split('.').pop().toLowerCase(), fileExtension) == -1 || $.inArray($('#ssimgfile2').val().split('.').pop().toLowerCase(), fileExtension) == -1) {
                        alert("You are permited to select only '\n.jpeg','.jpg', '.png', '.gif', '.bmp' formats are allowed.");
                        return false;
                    }
                    else {
                        return true;
                    }
                }
            }
        });
    });
4

3 回答 3

0

首先,您应该在表单中取消绑定提交事件。像这样使用:

<script>
$(function () {
    $('form').unbind('submit');

    $('form')
        .bind('submit', function () {
            var form = this;
            if ($("form").valid()) {
                $.post('/you/url', $(form).serialize(), function (data) {
                    if (data.success) {
                        //to do something
                    } else {
                        //to do something
                    }
                });
            }

            return false;
        });
});

于 2013-03-26T22:23:29.507 回答
0

我只是将表单提交更改为提交按钮单击,尽管我不知道表单提交有什么问题,但它对我有用。

我在这里改变了什么

 $('#demo-submit-button').click(function () {
//my code
});
于 2013-03-27T16:41:46.613 回答
0

您需要“取消设置”按钮默认事件。

$('form').submit(function (event) {
  event.preventDefault();
  //Your code is here
});
于 2013-03-26T22:09:02.967 回答