Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 获取表单:AJAX中的选项值_Java_Jquery_Ajax_Spring_Jsp - Fatal编程技术网

Java 获取表单:AJAX中的选项值

Java 获取表单:AJAX中的选项值,java,jquery,ajax,spring,jsp,Java,Jquery,Ajax,Spring,Jsp,Jsp代码如下所示: <form:select id="taxId" path="taxSeqNo" cssClass="defaultText" <form:options items="${taxListItemsBean.taxList}" itemValue="key" itemLabel="label"/> </form:select> 控制器代码: @RequestMapping(value = "/abc.html", method =

Jsp代码如下所示:

<form:select id="taxId" path="taxSeqNo" cssClass="defaultText"        <form:options items="${taxListItemsBean.taxList}" itemValue="key" itemLabel="label"/>
</form:select>
控制器代码:

@RequestMapping(value = "/abc.html", method = RequestMethod.POST)
    public ModelAndView executeConfirmTaxHttpServletRequest request,
      , @RequestBody List<KeyItemDto> taxList) {

System.out.println("taxList "+taxList);

}
    @RequestMapping(value="/getTaxValue", method=RequestMethod.GET)
    public String getTaxValue(@RequestParam("taxValues") String[] taxValues) {

        return taxValues;
    }

不确定代码有什么问题,以及如何将其传递给控制器并检索。任何意见都值得赞赏

如果我没有错,您希望在ajax中获得下拉选择值,然后您希望从ajax调用控制器

如果我的理解是正确的,那么您必须使用JQuery
.change()
函数来获取所选值,然后对服务器进行ajax调用

下面的代码给出了清晰的想法,
js代码:

这里,我们将所选值作为请求参数传递给控制器,在控制器中,您将使用@RequestParam注释接收该值

控制器代码:

@RequestMapping(value = "/abc.html", method = RequestMethod.POST)
    public ModelAndView executeConfirmTaxHttpServletRequest request,
      , @RequestBody List<KeyItemDto> taxList) {

System.out.println("taxList "+taxList);

}
    @RequestMapping(value="/getTaxValue", method=RequestMethod.GET)
    public String getTaxValue(@RequestParam("taxValues") String[] taxValues) {

        return taxValues;
    }

我想要整个下拉列表,而不仅仅是选定的值。我可以像上面描述的那样检索所选的值,但无法获取整个下拉列表值。JNPW,我已经编辑了我的答案,以获取数组中的所有下拉值,并将其作为数组传递给控制器。
    var taxValues = [];
    $('#taxId option').each(function() { 
                taxValues.push( $(this).attr('value') );
            });
    $('#taxId').change(function(e) {
        //var taxValue = $('#taxId :selected').val(); // gives the dropdown selected value
        $.ajax({
            url: "/getTaxValue",
            data: "taxValues="+ taxValues, //passing the selected value to controller as a parameter
            success: function(result){
               alert(result);
            }
        });     
    });
    @RequestMapping(value="/getTaxValue", method=RequestMethod.GET)
    public String getTaxValue(@RequestParam("taxValues") String[] taxValues) {

        return taxValues;
    }