0

我正在使用 jquery autosuggest 在文本框中填充数据。当我尝试在 ie8 中使用该功能时,出现错误:控制台未定义

显示错误的jquery代码是:

function lookup(inputString) {
        if(inputString.length == 0) {
            // Hide the suggestion box.
            $('#suggestions').hide();
        } else {
            // post data to our php processing page and if there is a return greater than zero
            // show the suggestions box
            $.post("string_search.php", {mysearchString: ""+inputString+""}, function(data){

                **console.log(data.length)**
                if(data.length >0) {
                    $('#suggestions').show();
                    $('#autoSuggestionsList').html(data);
                }else{
                $('#suggestions').hide();
                }
            });
        }
    } //end

请帮我解决错误

4

2 回答 2

2

与流行的看法相反,控制台也存在于 IE 中。但是console,直到打开开发人员工具(按 F12)后才定义。因此,除非在加载页面时开发者工具已经打开,否则它将失败。

一种解决方案是将以下内容添加到文件顶部(即在使用控制台之前):

<script>
    try {
        console.log('Hello console!');
    } catch(e) {
        console = {log: function(){}};
    }
</script>

这确保它console.log始终可用,即使它是无操作的。

于 2012-06-27T12:22:19.973 回答
1
if(window.console && window.console.log)
     console.log(data.length)
else
    alert(data.length);    
于 2012-06-27T12:48:24.530 回答