【问题标题】:using dojo text box with spring mvc使用带有 spring mvc 的 dojo 文本框
【发布时间】:2012-07-19 20:53:52
【问题描述】:

我是一名后端开发人员,尝试在 Spring MVC3 应用程序中使用 dojo 文本框。

页面下方有一个文本框和一个道场数据网格。文本框用于捕获搜索条件。当用户在文本框中输入值并单击 ENTER 时,它应该触发一个 Spring 控制器,该控制器将根据数据网格中文本框中提供的条件进行搜索。

问题是

*1。我如何在 dojo 而不是普通的 javascript 中做到这一点。我不希望重新提交整个页面。

*2。控制器如何检索在文本框中输入的值。它们是否必须作为@ModelAttributes 传递或显示为@RequestParam

【问题讨论】:

    标签: spring-mvc dojo


    【解决方案1】:

    文本框用于捕获搜索条件。当用户输入值时 文本框并单击 ENTER,它应该触发一个 Spring Controller 它将根据文本框中提供的条件进行搜索

    提交时,您需要使用映射 Spring 控制器的 URL 触发 dojo xhr.get() AJAX 调用。

    var getAll = function (URL){
        var xhrArgs = {
                url : URL, // e.g. localhost:8080/projectname/entity?param1=value1
                handleAs : "json",
                headers : {
                    "Content-Type" : "application/json"
                }
            };
        return dojo.xhrGet(xhrArgs);
    };
    

    在 spring 控制器中,您需要将此 url 映射到方法。如果它是一个单一的值来控制器 @RequestParam 会更好使用

        @RequestMapping(value = "/entity")
            public List<Model> someMethod(@RequestParam("param1")String keyword) {
    }
    

    【讨论】:

    • 拉维,感谢您的回复。我阅读了有关 dojo xhr 的更多信息,并试图理解为什么必须将 handleAs 属性定义为“json”。
    • 它可以是任何东西。我举了我的例子。它建议您如何处理来自服务器的响应。这取决于您的服务器以哪种格式提供数据
    • 谢谢拉维。如果将响应作为 json 处理,我会收到语法错误。即使作为文本,xhrGEt 也无法正常工作,尽管 url 是正确的(并且在粘贴到浏览器中时有效)我已将其作为单独的 question 提出
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-13
    • 1970-01-01
    • 1970-01-01
    • 2012-06-13
    • 2011-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多