如何在不使用任何模型的情况下将 JSP 中的多 select 值传递给控制器
how to pass the multi-select values from JSP to controller without making use of any Model
任何人都可以向我推荐任何清楚说明如何通过
从 JSP 到控制器的多个 select 值不使用任何模型。
我的要求:
在网页上只有一个多 select 列表框和提交按钮。
multiselect 列表框包含由“|”分隔的 OrderId 和 CustomerCode
示例:
- 订单 1|客户 1
- 订单 2|客户 2
- 订单 3|客户 3
- 订单 4|客户 4
- 订单 5|客户 5
用户可以 select 1 个或多个并单击提交按钮。
我需要查询我的订单 table 然后生成一个 jasper 报告。
因此,我的计划是将 JSP 中的值放入 Controller(以 List 或 OrderIds 的形式)
将其传递给服务,然后使用相应的 jrxml 创建 JASPER。
如果能从你这里得到一些 suggestion/advice 就太好了。
使用以下技术,
- java 脚本 - 从 jsp
中的多 select 列表框中获取 selected 值
- ajax - 将 selected 值从 jsp
传递给控制器
另外使用 spring 框架创建 java 网络应用程序
多select列表在form.jsp
<select id='category' multiple='multiple'>
<option value='Order1|Customer1'>Order1|Customer1</option>
<option value='Order2|Customer2'>Order2|Customer2</option>
<option value='Order3|Customer3'>Order3|Customer3</option>
<option value='Order4|Customer4'>Order4|Customer4</option>
<option value="Order5|Customer5">Order5|Customer5</option>
</select>
java 脚本函数,用于从 jsp 收集 selected 多个值并将其传递给控制器
function setData(){
var selectedValues= [];
$('#category:selected').each(function(i, selected) {
selectedValues[i] = $(category).val();
});
$.ajax({
type: 'POST',
dataType: 'json',
data {'selectedValues':selectedValues.toString()},
url: '/Project_name/add'
});
}
在提交按钮的点击事件中调用上面的js函数
<button onclick="setData()">Submit</button>
以上 js 函数调用控制器 (MyController) 中的 insertData()
方法并将 selected 值传递给它
@Controller
public class MyController {
@RequestMapping(value="/add", method=RequestMethod.POST)
public void insertData(@RequestParam(value="selectedValues") ArrayList<String> selectedValues){
//query order table and then generate a jasper report so on
}
}
任何人都可以向我推荐任何清楚说明如何通过 从 JSP 到控制器的多个 select 值不使用任何模型。
我的要求: 在网页上只有一个多 select 列表框和提交按钮。 multiselect 列表框包含由“|”分隔的 OrderId 和 CustomerCode
示例:
- 订单 1|客户 1
- 订单 2|客户 2
- 订单 3|客户 3
- 订单 4|客户 4
- 订单 5|客户 5
用户可以 select 1 个或多个并单击提交按钮。 我需要查询我的订单 table 然后生成一个 jasper 报告。 因此,我的计划是将 JSP 中的值放入 Controller(以 List 或 OrderIds 的形式) 将其传递给服务,然后使用相应的 jrxml 创建 JASPER。
如果能从你这里得到一些 suggestion/advice 就太好了。
使用以下技术,
- java 脚本 - 从 jsp 中的多 select 列表框中获取 selected 值
- ajax - 将 selected 值从 jsp 传递给控制器
另外使用 spring 框架创建 java 网络应用程序
多select列表在form.jsp
<select id='category' multiple='multiple'>
<option value='Order1|Customer1'>Order1|Customer1</option>
<option value='Order2|Customer2'>Order2|Customer2</option>
<option value='Order3|Customer3'>Order3|Customer3</option>
<option value='Order4|Customer4'>Order4|Customer4</option>
<option value="Order5|Customer5">Order5|Customer5</option>
</select>
java 脚本函数,用于从 jsp 收集 selected 多个值并将其传递给控制器
function setData(){
var selectedValues= [];
$('#category:selected').each(function(i, selected) {
selectedValues[i] = $(category).val();
});
$.ajax({
type: 'POST',
dataType: 'json',
data {'selectedValues':selectedValues.toString()},
url: '/Project_name/add'
});
}
在提交按钮的点击事件中调用上面的js函数
<button onclick="setData()">Submit</button>
以上 js 函数调用控制器 (MyController) 中的 insertData()
方法并将 selected 值传递给它
@Controller
public class MyController {
@RequestMapping(value="/add", method=RequestMethod.POST)
public void insertData(@RequestParam(value="selectedValues") ArrayList<String> selectedValues){
//query order table and then generate a jasper report so on
}
}