【问题标题】:Posting form in Javascript from JSP从 JSP 用 Ja​​vascript 发布表单
【发布时间】:2009-08-27 09:17:04
【问题描述】:

问题级别:中级/初级

我用

创建了一个表单
`method="post" action="eh.do" onsubmit="return Form1_Validator(this)"`

当我点击提交时验证成功并且工作正常。

但是在 servlet 上,我有一个连接函数来将值合并在一起。

打开Javascript时,即当我写onsubmit="return Form1_Validator(this)"时它显示:

java.lang.NullPointerException
    java.lang.String.concat(Unknown Source)
    EditHelper.doPost(EditHelper.java:27)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

但是一旦禁用了 Javascript,即我删除了onsubmit="return Form1_Validator(this)",它就可以正常工作了。

如果所有条件都为真,我的脚本返回

return (true);

这是问题吗?

我试过return(theForm);,但问题依旧!

【问题讨论】:

  • 请将 Form1_Validator 函数的代码以及 EditHelper.java 中靠近第 27 行的代码发布
  • 我不确定,但您可以将返回块作为 Java 代码而不是 Javascript 进行处理。按照@svinto 的建议发布您的代码。其次,你不应该在你的服务器代码中运行 Javascript。
  • 我想通了。我删除了所有连接值并使用常规的 + 连接,现在一切正常!顺便说一句 .. 表单验证没有问题,我在 servlet 中输出了一个 out.print 函数,日志中有传递的参数,传递的值.. @Helen 我在客户端而不是在服务器端运行 javascript !

标签: javascript jsp servlets


【解决方案1】:

如果您添加 onsubmit 处理程序,我将使用Firebug 查看表单提交请求参数如何变化。我猜你的 javascript 代码会以某种方式影响这些参数,一旦你看到发生了什么,就会很明显为什么会这样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-10
    • 2012-06-13
    • 2015-07-01
    • 2017-10-14
    • 2020-06-18
    • 2015-05-25
    • 2021-04-27
    相关资源
    最近更新 更多