使用<a>标签提交表单数据的问题以及获取session作为函数的参数调用的问题

本文记录了在动态网页中使用<a>标签替代提交按钮提交表单数据时遇到的问题,包括如何使<a>标签模拟提交功能、如何在表单验证中调用JavaScript函数check(),以及在JavaScript中如何正确获取session值作为函数参数。通过示例代码和解决方案,帮助开发者解决类似问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我在做动态网页时遇到以下几个问题,花了我好多时间才解决的。所以我要将它记录下面,为我以后再次遇到问题作参考。若是大家觉得哪里不对的,欢迎大家留言

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){

   ........

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值