0

我有这个功能:

var getData = function (obj) {

    for(var i = 0, j = localStorage.length; i < j; i ++) {
        var newKey = localStorage.key(i);
        var newValue = localStorage.getItem(newKey);    
        var newObj = JSON.parse(newValue);
        var ulListView = $('#container').append('<ul data-role="listview" data-split-icon="minus" data-split-theme="c" data-inset="true" id="ulOrigin'+i+'"></ul>');
        var dynPage = $(newObj[1].value).trigger('create');     
        //var dynPage = $('<div data-role = "page" id = "'+newObj[1].value+'"><div data-role = "header"></div><div data-role = "content"></div><div data-role = "footer"></div>"</div>');       
        var insideLi = $('#ulOrigin'+i).append('<li><a href="'+dynPage+'"><img src="images/'+newObj[0].value+'.png"><h2>'+newObj[1].value+'</h2><p>'+newObj[0].value+'</p></a><a href = "#deleteObject" data-rel = "popup" data-position-to = "window" data-transition = "pop">Delete Entry</a></li>');     
        var pageNum = $('#ulOrigin'+i);
        console.log(newObj);

    }


};

我正在尝试创建一个动态页面,其名称取自newObj[1].value. 访问链接时,我得到的错误是Error Loading Page. 在控制台中我有: 也OPTIONS file:///home/<address>/[object%20Object]标记为错误。

我正在使用 jQuery Mobile 1.3.0

4

1 回答 1

0

问题是 dynPage 不是字符串,在您当前的实现中,您有

var dynPage = $(newObj[1].value).trigger('create');

其次是

var insideLi = $('#ulOrigin'+i).append('<li><a href="'+dynPage+'">....

我只是假设您在单击上面的 href 时收到错误。我不知道 create 是如何工作的,但是 href 应该指向一个页面,这样你的 href 就会有一个正确的 URL。

如果您在单击代码创建的链接时确实遇到了错误,那么您可以使用最新代码更新问题,并添加该链接的生成 html,以便我们可以确切地看到发生了什么。

于 2013-03-21T15:59:26.653 回答