-4

我制作了一个程序,在该程序中,我正在获取在输入字段中输入的项目的记录值,假设在输入字段中有“a”,而不是输出应该不超过 5,并且项目的值从 a 开始。

<script>
    function main_func() {
    if (document.getElementById('search_input').value == "") {
        alert("Please Enter a charactor / word..");
    } else {
        var con = document.getElementById('first_div');
        var char = document.getElementById('search_input').value;
        var str = '';
        var ad = ['ab', 'ar', 'af', 'fa', 'af', 'at', 'aaay', 'aad', 'gd', 'nggn'];
        var len = ad.length;
        for (var j = 0; j < len; j++) {
            var str = ad[j];
            var n = str.indexOf(char);
            if (n == 0) con.innerHTML += '<font color=orange>' + str + '</font><br><br><br><br><br>';
        }
    }
}
</script>
4

1 回答 1

2

对找到的匹配使用计数器,当循环达到上限时停止循环。

var matches = 0;
for (var j = 0; j < len && matches < 5; j++) {
    var str = ad[j];
    var n = str.indexOf(char);
    if (n == 0) {
        con.innerHTML += '<div class="result">' + str + '</div>';
        matches++;
    }
}

并且为了一切圣洁的爱,不要使用<font>.

演示:http: //jsfiddle.net/RrAWs/

(那里仍然存在错误,这仅解决了限制到五个问题。)

于 2013-04-03T05:53:15.403 回答