关于表单中写Submit控件与JavaScript写跳转语句的坑
今天在做老师的项目时遇到一个坑,想给前端(前端的大体页面由外包公司写好)的一个按钮写个脚本实现页面跳转,代码如下
$("#btnDetail").click(function(){
var strFile="localhost:8080/SlnSUWF/CorePage/sbjksy.html";
var url='http://'+ strFile;
location.href=url;
return false;
});
但问题在于,加了这段脚本后怎么也无法实现页面跳转。
看了几遍代码,这么简单的代码应该没啥问题,感觉可能是location.href失效的问题,通过百度解决方案,最后发现 return false有效,但感觉就这样子没有彻底解决该问题,于是方向转为寻找所选取的元素的问题,于是按下F12,看HTMl源码,找到btnDetail按钮的html代码,发现btnDetail组件的type是submit,这下子找到原因了,点击它就是提交表单了,会先去执行change()里的代码,然后提交表单,但由于form未指定action,就默认是当前页面的url,所以最终的结果就相当于没有跳转了。
最后我把type改成button就可以顺利跳转了。