代码之家  ›  专栏  ›  技术社区  ›  Michael Bavin

grails:remotefield可以更新多个字段吗?

  •  0
  • Michael Bavin  · 技术社区  · 16 年前

    假设我有一个图书实体 国际标准书号 字段。 输入ISBN号时,我希望更新两个字段:标题和作者。

    我的控制器是这样的:

    def ajaxGetBook = {
            def book = Book.findByIsbn(params.isbn)
            if(book==null) book = new Book()
            render book as JSON
        }
    

    所以我的调用成功了,我得到了一本完整的json书籍。 现在我想用update属性更新2个texfields

     <g:remoteField action="ajaxGetBook" update="title"  name="isbn" value="${bookInstance?.book?.isbn}" paramName="isbn"/>
    

    现在,title字段将使用full book对象更新,所以这不起作用。

    是否可以仅用json book.title更新字段标题?

    是否可以一次更新更多字段?

    我可以 render book.title as JSON 但这只适用于一个领域。

    谢谢你

    1 回复  |  直到 16 年前
        1
  •  1
  •   billjamesdev    16 年前

    好吧,g:remotefield标记是为一个字段显式设置的,因此不能使用它更新多个字段。所以,你只剩下两个简单的选择:

    1. 使用2g:remotefield调用…这并不是一个坏的选择,因为它们几乎是并行的,因为它们是异步调用。

    2. 推出自己的ajax。改为使用g:remotefunction,并让您放在“success”属性中的js函数获取您的书籍,并更新适当的html字段。

    推荐文章