浏览 3233 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2014-12-13
今天用jsp+servlet+js实现一个删除的功能,结果遇到了一个问题 问题如下: <pre name="code" class="java">onclick="deleteOne(<%=message.getTitleId() %>)"</pre>其中<%=message.getTitleId() %>是jsp动态地去取值,不懂得可以将其看成是一个变量; <pre name="code" class="java">function deleteOne(titleId){ var r=confirm("确认删除?"); if(r == true){ document.main.ck_value.value=titleId; document.main.action="deleteServlet"; document.main.submit(); } };</pre> 问题是deleteOne函数如果没参数,或者指定成整数,那么deleteOne(注意对应调用,无参的时候调用无参deleteOne,有参数的时候调用有参deleteOne)能正常被调用,但是如果参数不是整数,而是字符串(我们也确实传的是字符串),那么问题就来了,deleteOne函数没被调用 后来我查看编译后的页面源代码,如下 <pre name="code" class="java"><a href="javascript:void(0)" onclick="deleteOne(OMG80)">删除</a></pre> 可以看到deleteOne(OMG80),仔细看,请问deleteOne函数的参数是什么? 是整数吗,显然不是;那么是字符串吗,也不是,字符串需要""或者'',所以问题找到,我们读不懂参数类型,机器更读不懂,所以它不知所措,那么理所当然的deleteOne函数没被调用 最后附上项目源码,有分页,有查询功能 如何解决了? <pre name="code" class="java">onclick="deleteOne('<%=message.getTitleId() %>')"</pre>加上引号就可以了 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |