Jquery Ajax自动完成:控制器的动作不可用

时间:2012-08-31 04:35:27

标签: ajax jquery-ui jquery grails

我试图使用jquery和ajax创建自动完成字段。我尝试了下面的代码但它给了我一个错误,控制器的动作不可用。这是我的exeternal .js文件中的代码:

$(function () {
  $("#inputfield").autocomplete({
    source: '<g:createLink controller="fruit" action="findFruit">'
  });
});

这是我的Fruit控制器的代码:

def findFruit = {
  def fruitsearch= Fruit.withCriteria {
    ilike 'fruit', params.term + '%'
  }

  render (fruitsearch?.'fruit' as JSON)
}

我使用了firebug来查看最新情况,当我在texfield上尝试输入时,它表示动作findFruit不可用。

我错过了什么吗?或者他们的代码有问题吗?感谢

1 个答案:

答案 0 :(得分:0)

由于您的js代码是从外部js文件中评估的,因此您应该尝试使用纯js代码而不是grails代码(因为它们不起作用)

尝试使用相对路径,如:

$( "#inputfield" ).autocomplete({
    source: '/app-name/controller/action'
});

看看是否有效。