1

我无法让我的 JQuery-ui 自动完成工作在生产(heroku、rails)上工作,但它在本地工作。

这是我的javascript(是的,我知道它很乱,这是我第一次使用jquery-ui)

<script>
$(function() {
var projects = '/courses.json'

$( "#search" ).autocomplete({
    minLength: 2,
    source: projects,
    focus: function( event, ui ) {
        $( "#search" ).val( ui.item.course.abbrev );
        return false;
    },
    select: function( event, ui ) {
      window.location.replace("/courses/"+ui.item.id);
        return false;
    }
})
.data( "autocomplete" )._renderItem = function( ul, item ) {
    return $( "<li></li>" )
        .data( "item.autocomplete", item )
        .append( "<a>" + item.abbrev + "</a>" )
        .appendTo( ul );
};
});
</script>

我不确定,但这可能是问题所在:

“/课程.json”

工作正常并以 JSON 格式列出我的所有对象

然而,

"/courses.json?term=m"

在本地返回正确的对象数组,但远程只返回一个空数组

4

1 回答 1

0

如果您正在查询远程服务器,请确保您在 jQuery AJAX 请求中使用 JSONP 而不是 JSON。

http://en.wikipedia.org/wiki/JSONPhttp://api.jquery.com/jQuery.getJSON/

于 2012-09-13T21:33:48.840 回答