点击button触发onclick事件判空后依旧自动跳转
Posted chenyangsocool
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了点击button触发onclick事件判空后依旧自动跳转相关的知识,希望对你有一定的参考价值。
这是一个前端的问题。
其中判断字符串为空的脚本代码是这样的:
var remark = $("#Remark").val(); //判空。注意:var reg = /空格/g; var reg = / /g; var tmp = remark.replace(reg, "");
先把所有空格去除,通过判断tmp是否为空来判断文本框是否为空。
问题是这样的:我点击button后,触发js脚本判断input框是否为空,如果为空就提示出错。否则提交表单。
结果是这样的:我敲回车后,尽管内容为空,也正确判断了内容为空,但是判断过后依旧会进行表单提交操作。
问题原因:在页面上有<form action=""></form>标签,所以当点击后,首先会进行js脚本,执行完成后依旧会进行form表单提交。
解决方案:删除<form action=""></form>标签就不会自动跳转了。
然后解决后,后来用同样的方法对textarea进行判断出错。
问题是这样的:我点击button后,触发js脚本判断textarea框是否为空,如果为空就提示出错。否则提交表单。
结果是这样的:我敲回车后,尽管没有输入任何文字,但是无法判断内容为空,于是导致直接提交表单。
问题原因:回车也是字符,所以我只替换了空格却没有替换回车符,所以判断不为空,直接提交了表单。
解决方案:多添加一个替换操作就可以了。
reg = /\n/g;
tmp = remark.replace(reg, "");
以上是关于点击button触发onclick事件判空后依旧自动跳转的主要内容,如果未能解决你的问题,请参考以下文章
如何让一个按钮自动触发,自动执行onclick鼠标单击事件. 默认已点击.
我的button按钮的onclick事件调用JS里的方法怎么不触发