Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用通配符加载的方法_Javascript_Jquery_Html_Css_Cordova - Fatal编程技术网

Javascript 使用通配符加载的方法

Javascript 使用通配符加载的方法,javascript,jquery,html,css,cordova,Javascript,Jquery,Html,Css,Cordova,我在Phonegap中使用jquery、jquery mobile、js、html和css,用于我的android/ios应用程序 我对js和jquery的理解非常有限 My index.html使用.load将其他html文件调用到它们的同名div中 是否有方法替换以下代码: $('#page01001').load('cards/01001.html'); $('#page01002').load('cards/01002.html'); $('#page01003').load('card

我在Phonegap中使用jquery、jquery mobile、js、html和css,用于我的android/ios应用程序

我对js和jquery的理解非常有限

My index.html使用.load将其他html文件调用到它们的同名div中

是否有方法替换以下代码:

$('#page01001').load('cards/01001.html');
$('#page01002').load('cards/01002.html');
$('#page01003').load('cards/01003.html');
$('#page01004').load('cards/01004.html');
..
$('#page01900').load('cards/01900.html');
(它占用了我的.js文件的近2000行),只需一条规则就可以做到:

$('#pageIDENTIFIER').load('cards/IDENTIFIER.html');
因此,任何名为“pageWHATEVER”的div都将加载一个同名的html文件(减去“page”一词)

我已经阅读了jquery通配符,但是找不到一种方法来获取通配符输入并在命令的第二部分复制它

稍微复杂一点,index.html中通常有几个地方引用相同的html文件:

$('#page01001').load('cards/01001.html');    
$('#pageX01001').load('cards/01001.html');
$('#pageH01001').load('cards/01001.html');
因此div“page01001”、“pageX01001”和“pageH01001”需要全部加载01001.html

而且,有很多div只是div,不需要加载任何内容。我不想影响那些。只有名称以“page..”开头的div才需要.load

有什么方法可以改进吗?

使用
.each()
循环和正则表达式从ID中提取页码

$("div[id^=page]").each(function() {
    var match = this.id.match(/\d+$/)[0];
    $(this).load('cards/' + match + '.html');
});

杰普。差不多就是这样。接下来的问题!html文件可能位于几个子目录中。“卡片”、“菜单”等。我尝试更改每个类别的div id,以便在上面的代码中[id^=card]转到.load('cards/'),这非常有效,但是我添加了相同的代码,用“card”代替“menu”,但失败了。这段代码不能用不同的变量重复几次有什么原因吗?@user5513718我想不出有什么原因它不能工作。你应该发布一个新问题,详细说明你在做什么。找到问题。用户错误和往常一样:)Barmar的回答是正确的!