Javascript C#MVC提交后通知禁用按钮
我有一个c#begin表单,文件上传如下所示:Javascript C#MVC提交后通知禁用按钮,javascript,c#,jquery,Javascript,C#,Jquery,我有一个c#begin表单,文件上传如下所示: @using (Html.BeginForm("New", "Post", FormMethod.Post, new { @class = "form-inline", role = "form", id = "newPostForm", enctype = "multipart/form-data" })) { @Html.AntiForgeryToken() @Html.ValidationSummary(true, "",
@using (Html.BeginForm("New", "Post", FormMethod.Post, new { @class = "form-inline", role = "form", id = "newPostForm", enctype = "multipart/form-data" }))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
@Html.HiddenFor(c => c.Post.MinuteID)
@Html.HiddenFor(c => c.Post.UserID)
@Html.TextBoxFor(m => m.PostImage, new { type = "file", name = "PostImage", id = "PostImage", accept = "image/*", @class = "file-input imageInput" })
<button id="postBtn" type="submit" class="btn btn-primary btn-block intbtn">Post </button>
}
我这样做的原因是为了防止按钮被多次点击(多次发布),我该如何解决这个问题,或者如果有更好的方法来防止多次发布,我想接受一些建议。我希望有一个加载效果,但这就是为什么我更喜欢javascript。。我可以在
ajax.post
中这样做,但我听说enctype=multipart/formdata
不适用于ajax。非常感谢您的帮助。提交的表单为空,因为您正在禁用$('#postBtn')中的输入。单击(…
处理程序,禁用的输入无法提交,这就是为什么您在httppost控制器操作中有空表单的原因
不要禁用输入,只需禁用submit按钮即可停止多次单击
.问题是您在提交表单之前禁用了所有输入,并且无法提交禁用的输入。与其禁用所有输入,不如禁用“提交”按钮……或者将禁用包装在
setTimeout(function(){…},0)中
这样,表单序列化后将发生禁用。为什么不试试这个jquery插件?@KartikeyaKhosla谢谢你,你能把你的评论作为答案发布吗,这样我就可以选择它。我不知道禁用的输入没有提交。
$('#postBtn').click(function () {
$('.imageInput').prop("disabled", true);
$('#postContent').prop("disabled", true);
$('#btnText').text('Saving.. ');
$('#postBtn').prop("disabled", true);
//$('#newPostForm').submit(); -- i tried adding this and changing my button type to 'button' but still empty form values are submitted
});