我在做动态网页时遇到以下几个问题,花了我好多时间才解决的。所以我要将它记录下面,为我以后再次遇到问题作参考。若是大家觉得哪里不对的,欢迎大家留言
1.不是表单一般是使用<input type="submit">提交按钮,点击后就可以将表单中的数据提交了吗?但是我这次将<a>标签作为提交按钮,但是它实现的是超链接的功能,鼠标放上去也不会有手指出现,所以你可以这样子设置href="javascript:;",这样子放上去就可以出现手指的图标了。
2.另外你要是点击它能够将表单中的数据提交的话就要加一句onclick="$('#step1_frm').submit();"。其中step1_frm为表单的id属性的值。
3.但是我制作这个表单的过程中会使用到JavaScript来判断表单中的数据是否规范来决定是否要提交表单中的数据,不然点击提交按钮就提交数据这可是不行的,所以这是加上这句onsubmit="return check()",当check()函数返回true时才会提交表单中的数据。到这里就要注意的地方是onsubmit 事件会在表单中的确认按钮被点击时发生, 如果你用<a>标签作为按钮的话,这时就可能不会触发onsubmit事件,也就不会调用check()函数,这样子你就要想第二步那样子设置onclick="$('#step1_frm').submit();"才会触发事件。
4.如果想获取session的值作为函数实参的话,你如果这样子调用的话check(<%=(String)request.getSession().getAttribute("abc") %>),是不能调用check()函数的,因为我们要传的是字符串,所以要加""或者‘’在前面,才能调用check()函数。这个解决方法是我通过百度看到的,是一位网友写的博客,其实我挺感谢这篇博客的,不然我就困在这里想不出来了。这是这篇博客的地址:http://youzhibing.iteye.com/blog/2166047
这是主要的几行代码,看得清楚点
<form action="" method="post" id="step1_frm" onsubmit="return check('<%=(String)request.getSession().getAttribute("abc") %>');">
<a onclick="$('#step1_frm').submit();" href="javascript:;">下一步</a>
</form>
函数check大概这样子
function check(code){
........
}