小编kri*_*ath的帖子

如何使用JSON数据填充jQuery Mobile ListView?

我正在使用HTML和jQuery Mobile(JQM)开发一个webapp,所以我对此很新.我在这里要做的是用名单列表填充JQM列表视图.这些名称中的每一个都将链接到显示个人数据的新页面(全名,地址,出生日期等).

目前,由于我缺乏知识,我为每个人手动创建一个新的.html文件(例如johnDoe.html为一个虚构的角色John Doe先生).然后我通过函数将列表元素物理链接到这个html文件.

问题是现在我有100个人填充该列表视图.我认为有一种更简单的方法可以做到这一点,而不是手动为所有这些人创建100多个html文件吗?

我听说过这个JSON的东西可能有用,但是从零计算知识的背景来看,我真的不明白它是如何工作的.有人请说明我该怎么办?

非常感谢!

编辑:我正在使用Dreamweaver CS5.5进行编码.对于我负责开发的这个webapp,我得到了一个使用JQM和Backbone.js的"模板"或排序.因此,单个HTML文件的"多页"结构似乎不起作用.从我在模板中看到的,每个HTML文件都有一个相应的JS文件,其代码如下所示:

define(['jquery',
        'underscore',
        'backbone',
        'helper',
        'views/phr/list',
        'text!templates/vpr2.html'
    ],
    function ($,
        _,
        Backbone,
        Helper,
        phrListView,
        tmpVpr2) {
        var view = Backbone.View.extend({
            transition: 'fade',
            reverse: true,
            initialize: function () {
                this.phrlistview = new phrListView();
            },
            render: function () {

                $(this.el).append(_.template(tmpVpr2, {}));

                console.log("Rendering subelements...");
                Helper.assign(this, {
                    '#phrListView': this.phrlistview
                });

                return this.el;
            }

        });

        return view;
    });
Run Code Online (Sandbox Code Playgroud)

对于HTML页面,它们都以<div data-role=header>标签开头,然后以a开头,之后<div data-role=content>以a <div data-role=footer>开头,在开始和结束标签中都有各自的内容.

对于我的列表视图,listview的JQM代码将在<div data-role=content>HTML文件的一部分内.如何用JSON数据填充此列表视图呢?

(抱歉,如果我在这听起来非常棒,因为我真的很>.<非常感谢帮助!)

json listview jquery-mobile

8
推荐指数
2
解决办法
2万
查看次数

在移动网络应用程序中创建"另存为书签"按钮

我目前正在开发基于jQuery Mobile 的Web应用程序.我想首次添加一个对话框,提供一个按钮,然后可以点击该按钮将书签保存到网站.此解决方案适用于iOS和Android.有没有办法做到这一点?我看到bubble.js适用于iOS,但我需要一个适用于上述平台的通用解决方案.可能吗?

互联网上有一些关于此的文献吗?

jquery bookmarks web-applications jquery-mobile

6
推荐指数
1
解决办法
5776
查看次数

jQuery - 无法识别的表达式:: nth-child

我试图选择:nth-child使用jquery,但它显示语法错误.

Error: Syntax error, unrecognized expression: :nth-child
Run Code Online (Sandbox Code Playgroud)

这是我的代码

var i;
jQuery('#' + id + ' .tab-pane').each(function (id, t) {
    var n = jQuery(this).attr('id', 'pane-' + t);
    var p_id = n.attr('id');
    jQuery('#' + id + ' .nav-tabs li:nth-child(' + i + ') a').attr('href', p_id);
    i++;
});
Run Code Online (Sandbox Code Playgroud)

请检查我的代码这里缺少什么

jquery

6
推荐指数
1
解决办法
1万
查看次数

Cordova Build在OS X上使用EACCES和ENOENT失败

我最近开始使用Cordova构建iOS应用程序,但我遇到了障碍.在安装了nodeJS,git和cordova(使用sudo)之后,我在我的用户帐户的Documents文件夹中创建了我的第一个应用程序.

第一轮比赛完美无缺.一切正常,将我的开发帐户添加到Xcode帮助我的应用程序在设备上运行.我决定通过添加一个名为001_c.jsin 的"before_prepare"钩子来增加一些东西<appName>/hooks/before_prepare folder.这是钩子开始的方式:

//This is where nodeJS exists
#!/usr/local/bin node

console.log("Changing config");

var fs = require('fs');
var path = require('path');

var rootdir = process.argv[2];

//and so on
Run Code Online (Sandbox Code Playgroud)

当我现在构建应用程序时,我收到此错误:

pc295786:master kellster $ cordova build ios运行命令:/Users/kellster/documents/apps/master/hooks/before_prepare/001_c.js/Users/kellster/documents/apps/master错误: 在exports._errnoException(util.)生成EACCES. js:746:11)在Object.exports.spawn的Object.exports.spawn(child_process.js:988:9)的ChildProcess.spawn(child_process.js:1155:11)处(/ usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:104:31)at runScriptViaChildProcessSpawn(/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/hooks/HooksRunner.js:188: 23)在/ usr/local/lib/node_modules/cordova/node_modules/cordova-的runScript(/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/hooks/HooksRunner.js:131:16) lib/src/hooks/HooksRunner.js:114:20在_fulfilled(/usr/local/lib/node_modules/cordova/node_modules/q/q.js:787:54)的self.promiseDispatch.done(/ usr/local) /lib/node_modules/cordova/node_modules/q/q.js:816:30)在Promise.promise.promiseDispatch(/ usr/local)/lib/node_modules/cordova/node_modules/q/q.js:749:13)

要进行故障排除,我更改了钩子脚本的第一行

#!/usr/local/bin node
Run Code Online (Sandbox Code Playgroud)

#! node
Run Code Online (Sandbox Code Playgroud)

(因为这适用于Windows.node在全球范围内).但是,这导致了一个ENOENT错误:

pc295786:master kellster $ cordova build ios运行命令:/Users/kellster/documents/apps/master/hooks/before_prepare/001_c.js/Users/kellster/documents/apps/master错误:Hook失败,错误代码为ENOENT:/ Users /krster/documents/apps/master/hooks/before_prepare/001_c.js atus //rocal/lode/node_modules/cordova/node_modules/cordova-lib/src/hooks/HooksRunner.js:194:23在/rer /local/lib/node_modules/cordova/node_modules/q/q.js:797:24)在Promise.when的/usr/local/lib/node_modules/cordova/node_modules/q/q.js:823:30(/ usr/local/lib/node_modules/cordova/node_modules/q/q.js:1035:31)在Promise.promise.promiseDispatch(/usr/local/lib/node_modules/cordova/node_modules/q/q.js:741: 41)在/usr/local/lib/node_modules/cordova/node_modules/q/q.js:557:44在flush(/usr/local/lib/node_modules/cordova/node_modules/q/q.js:108:17 )在启动时在Function.Module.runMain(module.js:503:11)的process._tickCallback(node.js:355:11)处(node.js:129:16)

如何构建这个?我很感激我能尝试的任何建议.


有些事情需要注意:

  1. (在我的绝望中,)我尝试运行以下命令,因为"EACCES"类型的错误.但是他们似乎都没有对结果产生任何影响.构建仍然失败. …

macos node.js ios cordova

3
推荐指数
1
解决办法
5120
查看次数

jquery每个json变量bug

我有一个奇怪的错误.当我尝试运行我的代码时:

var firstJson;
$.getJSON(site_url+"/more/sector_by_city/"+id+"?"+Math.random(), function( json ) { 
    $.each(json, function(key, value) {
        firstJson = 9;  
    });
}); 
alert(firstJson);
Run Code Online (Sandbox Code Playgroud)

我收到的提醒是:"undefined".

为什么我得到这个而不是得到9

我在这里错过了什么?

(每个循环运行没有问题,并且JSON中有值)最后,9更改为其他一些值.

谢谢

php ajax jquery json

1
推荐指数
1
解决办法
55
查看次数

将$(this)vs缓存选择器用于变量是否有任何性能优势?

$(this)与缓存选择器相同吗?$(this)每次都会搜索DOM吗?

例如:

$('#selector').on('click', function() {
    $(this).method();
    $(this).method1();
    $(this).method2();

    //OR

    var selector = $('#selector');

    selector.method();
    selector.method1();
    selector.method2();

}
Run Code Online (Sandbox Code Playgroud)

jquery jquery-selectors

1
推荐指数
1
解决办法
419
查看次数

div打开时更改链接上的文本

我的页面上有一个按钮

 <button id="show1" class="morelinkblack">Find Out More</button>
Run Code Online (Sandbox Code Playgroud)

单击时,它将运行此代码

 $("#show1").click(function(){
   $(".hidden-div1").slideToggle("slow");
 });
Run Code Online (Sandbox Code Playgroud)

有没有办法在div显示时更改文本以说"关闭"而不是"找出更多"?

html javascript jquery

0
推荐指数
1
解决办法
264
查看次数