当前位置 : 主页 > 网页制作 > JQuery >

如何使用jQuery获取id元素的一部分?

来源:互联网 收集:自由互联 发布时间:2021-06-15
我如何从带有id =“old- [id]”的span获得“Some text”并将其放入id =“new- [id]”? span id="old-1"Some text/spanspan id="new-1"/spanspan id="old-5"Some text/spanspan id="new-5"/span 我不知道如何在没有substring()函
我如何从带有id =“old- [id]”的span获得“Some text”并将其放入id =“new- [id]”?

<span id="old-1">Some text</span>
<span id="new-1"></span>
<span id="old-5">Some text</span>
<span id="new-5"></span>

我不知道如何在没有substring()函数的情况下获取id的数字部分.
我认为存在是更正确的解决方案.
谢谢.

由于你的问题并不完全清楚你在问什么,我会给你提供一些不同的例子:

对于单个ID,您可以这样做:

$("#new-1").text($("#old-1").text());

如果您有一堆要执行此操作的顺序ID,则可以执行以下操作:

for (var i = 1; i <= 5; i++) {
    $("#new-" + i).text($("#old-" + i).text());
}

如果它是HTML,而不仅仅是文本,您可以使用.html()代替上面代码中的.text().

$("#new-1").html($("#old-1").html());

要么

for (var i = 1; i <= 5; i++) {
    $("#new-" + i).html($("#old-" + i).html());
}

如果要查找ID为“old-”的所有对象,并处理所有这些对象,无论它们上面有多少和哪些数字,您都可以这样做:

$('[id^="old-"]').each(function() {
    var newid = this.id.replace(/old/, "new");
    $("#" + newid).html($(this).html())
})

这将创建一个jQuery对象,其中所有对象的id都以“old-”开头,然后将“old”替换为“new”以创建目标id值,并使用它将HTML从源复制到目标.

如果在名为elem的变量中有一个给定对象,并且只想提取id值的数字部分,则可以使用常规表达式来匹配数字部分,如下所示:

var matches = elem.id.match(/\d+$/);
if (matches) {
    var numString = matches[0];
}
网友评论