java - 为什么我的表单参数没有进入 JSP

标签 java javascript html jsp servlets

这是我的 HTML 表单:

 <form action="supplierportal_home.jsp">


   <select id="contract" name="contract"> 
     <option    selected="selected">Please Select</option>
     <option    value="open" >Open</option>
     <option    value="limited" >Limited</option>  
   </select>

   <input type="text" name="cpv_code" placeholder="<%= cpvOrTenderNo %>">

   <button type="submit">FIND  <%= contractOrTender %></button>

  </form>

我正在进入 JSP

String  contract=request.getParameter("contract");
    System.out.println("%%%"+contract);

    String  cpv_code=request.getParameter("cpv_code");
    System.out.println("%%%"+cpv_code);

这就是问题所在。看起来非常令人讨厌。

当我输入这两个值时,只有 parameters 进入 jsp 如果我只从选项中选择契约(Contract),那么如果我选择 null 就会出现给出 cpv-co​​de 那么参数就来了...任何人都可以帮忙解决这个问题...

为什么我的选择选项值取决于其他表单元素 cpv-co​​de 值,请说明原因。

谢谢。

最佳答案

<button type="submit">FIND  <%= contractOrTender %></button>

在此示例中,只要您在文本框中输入文本,则仅contractOrTender 该值可以从文本框中获取。

但是,当您没有在文本框中输入任何值并尝试从下拉列表中访问值时,它只会出现“null”。作为boz此时<%=contractOrTender %>这个值为null。

jsp页面出现错误。这就是为什么即使您没有在文本框中输入任何值,也无法获得下拉值的原因。

解决方案

尝试为文本框设置一些默认值。或

更改您的 HTML 代码。

关于java - 为什么我的表单参数没有进入 JSP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17008264/

相关文章:

php - 从 jplayer 的 mysql 数据库获取 URL

jquery - Css 未导入到 html 中

html - 如何创建一个居中的 AJAX 模式弹出窗口,其宽度是基于百分比的?

java - JPA 事务未回滚持久调用。仅在 MySQL 上插入和提交忽略事务规则

java - 为什么location.getSpeed()总是返回0

java - gradle war 不想编译我的项目

html - 将 Electron 与离线 HTML5 用于离线应用程序

java - Java 中迭代器变量前面的括号是什么?

Javascript:两个 if typeof undefined 语句给出不同的结果

javascript - Rails 3、Haml、Javascript - 如何将 javascript 的变量放入部分