`

jQuery EasyUI From表单提交后不执行success

 
阅读更多

新人使用EasyUI的From表单实现文件上功能,后台处理成功后返回json串,但返到了页面上显示我的json数据串,而没有走到success,代码如下:

$(function() {
	$('#importFile').click(function() {
		$.messager.progress(); // 显示一个进度条
		$('#activityUserFileUpload').form('submit', {
			url : basePath + '/activity?methodName=importActivityFile',
			onSubmit : function() {
				var isValid = $(this).form('validate');
				if (isValid) {
					$.messager.progress({
						text : "正在导入,请稍后..."
					});
					return true;
				}
				return false;// 未通过表单验证阻止表单提交
			},
			success : function(data) {
				$.messager.progress('close'); // 当成功提交之后隐藏进度条

				// alert(data);
				console.log(data);
			}
		});
	});
});

 找了很久没有找到原因,后来发现提交了两次表单,如下图:



 

 为什么是两次提交呢想不明白,所以尝试着把上面代码当中的"submit"删除,再次尝试就正常了,如下图:



 

把上图中红色选择的删除就可以,不知道有没有人也遇到此问题。解决方法是不是一样。

 

问题原因:

问找到了,现在前来看一下我页面上的代码如下图:

<form id="activityUserFileUpload" action="" method="post" enctype="multipart/form-data">
	<input type="file" class="easyui-validatebox" validType="validateFile" required="true" name="file" style="width:150px;"/>
	<input id="importFile" type="submit" name="import" value="导入用户"/>
	<a href="${application.getContextPath()}/tempFile/Template.xlsx">下载模板</a><br/></a>
    </form>

 可以看到我导入用户按钮使用了"submit"来处发事件,所以我们可以看到是两次请求。所以要解决问题有两个方法了,要么你提交时不用"submit"提交,如果你使用了"submit"提交他就得像我上面那样把js当中的"submit"删除。

  • 大小: 129.9 KB
  • 大小: 132.5 KB
  • 大小: 177.6 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics