繁体   English   中英

将li的列表从客户端传递给Spring MVC控制器

[英]Pass a list of li from client to Spring MVC controller

我想在提交中向Spring控制器发送一个值列表。 该列表在客户端以dinamically方式更改。 我看了这个,但只适用于输入,因为我不能在标签li中添加名称。

<ul id="paramselected" class="paramsnav" class="dropdown">
    <li class="ui-widget-content selected">value1</li>
    <li class="ui-widget-content selected">value2</li>
    ...                 
</ul>

反正有没有实现它?

任何帮助将不胜感激,

谢谢。

<ul id="paramselected" class="paramsnav" class="dropdown">
  <li class="ui-widget-content selected"><input type="hidden" value="value1" name="liContent">value1</li>
  <li class="ui-widget-content selected"><input type="hidden" value="value2" name="liContent">value2</li>  
  <li class="ui-widget-content selected"><input type="hidden" value="value3" name="liContent">value3</li>              
</ul>

而你的控制器shuold就像:

@RequestMapping(value="/actionName")
  public String getLiValues(HttpServletRequest request){
    String[] liValues = request.getParameterValues("liContent");
  }

你的数组已经准备好了li值。

请注意, <ul>数据不会发送到服务器,因为它不是用户输入组件。

检查以下链接

尝试获取某种动态,无序列表以将订单发送到servlet

但是如果你想发送所有的值,你可以通过javascript或ajax通过在javascript中获取<li>值并发送到servlet来发送它。

您可以使用javascript POST(使用XMLHttpRequest )发布数据,从列表中检索数据并发送它。

使用jquery获取li标签的值,然后创建一个数组并使用array作为请求参数调用控制器。

AFAIK,正常行为是只有输入元素从<form> submit发布到servlet。 你可以通过jquery发布它

$(document).ready(function(){
    $("#button").click(function(){
        var arr = [];
        // get the text from li's
        $('#paramselected li').each(function(index) {
          arr.push($(this).text());
        });
        $.post("URLMapped",
        {
          liValues: arr; // arr contains your li texts
        },
        function(data,status){
            // your response here
        });
    });
});

你可以使用js或jquery ajax请求。 您可以在js中找到所有不同的li值,之后您将描述var obj 其中有li值并调用ajax方法:

$.ajax({
        type: 'POST',
        contentType: 'application/json',
        dataType: 'json',
        mimeType: 'application/json',
        async: true,
        url: url,
        data: obj,
        success: function (result) {
            console.log(result);

        }
    });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM