如何在没有提交的情况下调用spring controller

时间:2014-05-28 15:48:10

标签: javascript jquery spring twitter-bootstrap spring-mvc

我的jsp中有一节。它看起来像:

<select id="themeColor" class="form-control">
    <option>Black</option>
    <option selected>White</option>
</select>

现在我想在选择其他选项时调用我的弹簧控制器。我不想重新加载页面,也不想去某个地方。只是一个控制器调用,它会在数据库中执行一些操作。

这有可能吗?

哦,二手乐器列表:spring MVC,bootstrap.css和js,以及jQuery

2 个答案:

答案 0 :(得分:1)

您的解决方案是对控制器进行ajax调用。您对检索到的数据所做的工作取决于您。

例如,从现实生活中剔除......

$('#themeColor').change(function() {
   var theme = $(this).val();
   changeTheme(theme);
});

function changeTheme(theme) {

    var data = {
            theme : theme
    };

    var url = "mySpringContoller.html";

    $.ajax( {
        type : "POST",
        url : url,
        data : data
    }).done(function(returnedData) {
            // Do something cool here with the returnedData.
    }).fail(function(returnedData) {
        // Do something not so cool here with the returnedData;
    }).always(function(returnedData) {
        // Always do something if you want to. 
    });
}

答案 1 :(得分:0)

如果它在表单中,您可以通过编程方式将表单发布到控制器操作,更改下拉列表的选择,如下所示:

$('#themeColor').change(function(){

$(this).closest("form").submit();


})