0

我正在使用 AJAX 通过数据库中的 JavaScript 通过 JavaScript 填充 HTML 页面上的数据调用它有时会正确填充,有时不会

HTML 部分

<body>
    <div data-role="page" id="properties">
        <div data-role="content" class="hs-content">
            <div class="container_12">
                <div class="basic-info content-wrap">
                    <div class="skip-line"><h3>Select your weapon</h3></div>
                    <ul data-role="listview" data-inset="true" id="weaponList"></ul>
                </div>
            </div>
        </div>
    </div>
</body>

JavaScript

getWeaponsList : function()
{
    var sUrl = "weapons.php";
    WS.request( sUrl,null,'POST', successHandlerUC, failureHandlerUC, false );
    function successHandlerUC( o )
    {
        $('#weaponList').empty();
        var li = '';
        var response = WS.getResponseXML( o );

        // Getting Weapons From DataBase
        var weapons = response.getElementsByTagName('weapon');
        //alert("Total Weapon : "+weapons.length);

        for (var i = 0; i < weapons.length; i++)
        {
            var weapon = weapons.item(i);

            var id = weapon.getElementsByTagName('id');
            id = $(id.item(0)).text();

            var name = weapon.getElementsByTagName('name');
            name = $(name.item(0)).text();

            li += '<li id="'+id+'";><a href="animal-data.html" onClick="HarvestData.saveWeapon('+id+',\''+name+'\')"><span><img title="swords" src="images/bow.png"></span>'+name+'</a></li>';

        }

        $('#weaponList').append(li);
        $('ul#weaponList').listview('refresh');
    }

    function failureHandlerUC( o )
    {

    }
}

有时它会在 html 页面上显示所有数据,但有时它不会在页面上显示任何数据,但两种情况下的数据都来自响应(通过在 Firefox 中使用 FireBug 和 Web Developer PlugIn 进行检查)

是什么错误或任何其他问题?提前致谢

4

1 回答 1

0

我相信您面临的主要问题是由于额外的 JavaScript 代码(未在问题中发布)导致错误,这导致了问题中讨论的问题。您发布的代码应该按原样工作(就附加的 HTML 而言)。

我相信这条线是罪魁祸首:

$("#gallerypopup a").photoSwipe(options);

这被调用并且不photoSwipe()存在这样的功能。这很可能导致 OP 看到的奇怪行为。

这里的底线是,您需要调试代码。如果存在与您看到的问题“无关”的错误,请先修复该错误。然后看看你是否还有问题。

于 2013-08-20T14:15:55.490 回答