3

我有以下代码,它应该获取输入字段的值,将值发送到 imdbapi.org 并处理发回的 JSON。我包含了一个显示输入字段值的元素,但是对于一些字符串,它会切断字符串。看这个测试用例

$("form > input#movname").keyup(function() {
    var inputval = encodeURI($("form > input").val());
    $.getJSON('http://imdbapi.org/',
    {
        title: inputval,
        plot: "none",
        limit: "5"
    },
    function(data) {
        var items = [];
        $.each(data, function(key, val) {
            items.push('<li id="'+val.imdb_id+'">');
            items.push('<img src="'+encodeURI(val.poster)+'" />');
            items.push('<strong class="title">'+val.title+'</strong><br />');
            items.push('<div>'+val.rated.replace("_"," ")+'</div>');
            items.push('</li>');
        });
        items.push('<li id="debug">');
        items.push('<img src="src/nocover.png" />');
        items.push('<strong class="title">'+$("form > input").val()+'</strong><br />');
        items.push('</li>');
        var html = items.join('');
        $("#suggestions").html("");
        $('<ol/>', {
            'class': 'moviessuggestions',
            html: html
        }).appendTo('#suggestions');
    });
});
4

1 回答 1

0

看起来limit是不必要的(错误用法?),使用

{
    title: inputval,
    plot: "none"
}

它工作正常。

于 2012-12-11T11:23:30.997 回答