无法解决为什么这个功能不起作用。通过ajax / jquery加载内容并且不加载

时间:2011-12-12 19:24:53

标签: javascript ajax function jquery

这可能是我做过的蠢事但是我无法解决这个问题。继承人的职责:

function loadguides(softwareid){
            var $softwareid = $('#'+softwareid); 
            $softwareid.load("devices/" + phoneid + firmwareid + ".html " + "#" + softwareid);
        }
        loadguides('ms1');
        loadguides('ms2');
        loadguides('ms3');
        loadguides('ms4');
        loadguides('ms5');
        loadguides('ps1');
        loadguides('ps2');
        loadguides('ps3');

如果您需要更多代码,只需询问哪些部分。为了进行比较,这有效:

loadtab('mac');
    loadtab('pc');
    loadtab('linux');
    loadtab('safari');
    loadtab('redsn0wM');
    loadtab('redsn0wP');
    loadtab('pwnagetool');
    loadtab('limera1n');
    loadtab('greenpois0n');
    loadtab('spiritM');
    loadtab('spiritP');
    loadtab('sn0wbreeze');

    function loadtab(tab){
        var $tab = $('#'+tab);
        $tab.hide();
        $tab.load("devices/" + phoneid + firmwareid + ".html " + "#" + tab,
        function(){
            var tabcontent = $("#"+tab).text();
            if (tabcontent == "1"){
                $tab.show();
            }
            else{
                $tab.hide();
            }
        });
    }

2 个答案:

答案 0 :(得分:0)

目前尚不清楚问题所在。你收到错误了吗?它只是不加载吗? 您似乎没有定义phoneid或firmwareid JS变量。

顺便说一句,您可以在http://jsfiddle.net

上发布完整代码

我会安装/使用Firebug并查看控制台以确定是否存在javascript或网络错误。

答案 1 :(得分:0)

你的函数声明应该高于你调用它的位置吗?例如:

function loadtab(tab){
    var $tab = $('#'+tab);
    $tab.hide();
    $tab.load("devices/" + phoneid + firmwareid + ".html " + "#" + tab,
    function(){
        var tabcontent = $("#"+tab).text();
        if (tabcontent == "1"){
            $tab.show();
        }
        else{
            $tab.hide();
        }
    });
}
loadtab('mac');
loadtab('pc');
loadtab('linux');
loadtab('safari');
loadtab('redsn0wM');
loadtab('redsn0wP');
loadtab('pwnagetool');
loadtab('limera1n');
loadtab('greenpois0n');
loadtab('spiritM');
loadtab('spiritP');
loadtab('sn0wbreeze');