IE的问题

时间:2011-08-31 10:54:51

标签: javascript jquery internet-explorer

有人知道为什么这不起作用吗?

$(document).ready(function() {

    var loading;
    var results;

    form = document.getElementById('form');
    loading = document.getElementById('loading');
    results = document.getElementById('results');

    $('#Submit').click( function() {

        if($('#Search').val() == "Desired name here..")
        {alert('Please enter a valid domain name, Thank you.');return false;}

        results.style.display = 'none';
        $('#results').html('');
        $("#loading").fadeIn(2000);

        $.post('process.php?domain=' + escape($('#Search').val()),{
        }, function(response){

            results.style.display = 'block';
            $('#results').html(unescape(response)); 
            loading.style.display = 'none';
        });

        return false;
    });

});

HTML:

<a href="#" id="Submit"><img src="img/submit_domain.png" height="30" width="73" class="host_sb"></a>

我安装了jQuery,它可以在其他所有浏览器中使用。

这是我的问题:

什么都没有加载。 #loading没有显示哪个不显示#results

1 个答案:

答案 0 :(得分:1)

您的代码是纯JavaScript和jQuery的奇怪组合..不确定这会导致问题,但请尝试此优化版本:

$(document).ready(function() {
    $('#Submit').click(function() {
        var searchValue = $('#Search').val();
        if (searchValue === "Desired name here..") {
            alert('Please enter a valid domain name, Thank you.');
            return false;
        }

        var oResults = $('#results');
        oResults.html('');
        oResults.hide();
        $("#loading").fadeIn(2000);

        var now = new Date();
        $.post('process.php?domain=' + encodeURIComponent(searchValue) + '&t=' + now.getTime() , { }, function(response) {
            oResults.show();
            oResults.html(decodeURIComponent(response)); 
            $("#loading").hide();
        });

        return false;
    });
});

如果没有运气,请尝试调试如果您没有任何工具使用普通旧警报 - 在alert('got here');函数的开头或AJAX回调的关键行中添加.click()