Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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 如何使用jquery将字符串中的数字增加1_Javascript_Jquery_Html - Fatal编程技术网

Javascript 如何使用jquery将字符串中的数字增加1

Javascript 如何使用jquery将字符串中的数字增加1,javascript,jquery,html,Javascript,Jquery,Html,我正在使用一个jquery插件,它可以创建选项卡来导航,除了最后一个硬编码的选项卡外,所有的选项卡都是动态加载的。我仍然希望像往常一样导航,以便tab在+1之前需要有选项卡的id 以下是使选项卡工作的两个元素: <a href="#step-10" class="nav-link">Vul je keuze aan</a> <div id="step-10" class="" style=""> 例如,如上所述,有10个步骤/选项卡,那么硬编码的步骤需要

我正在使用一个jquery插件,它可以创建选项卡来导航,除了最后一个硬编码的选项卡外,所有的选项卡都是动态加载的。我仍然希望像往常一样导航,以便tab在+1之前需要有选项卡的id

以下是使选项卡工作的两个元素:

<a href="#step-10" class="nav-link">Vul je keuze aan</a>
<div id="step-10" class="" style="">

例如,如上所述,有10个步骤/选项卡,那么硬编码的步骤需要有:

<a href="#step-11" class="nav-link">Vul je keuze aan</a>
<div id="step-11" class="" style="">


我该怎么做?我不能将其解析为一个数字并增加一,因为该数字与
步骤-
一起位于一个字符串中。如何从该字符串中删除数字、增加数字并将新数字放回?

回答此问题<代码>如何从该字符串中删除数字、增加数字并将新数字放回? 假设我将id分配给一个变量

var id = "step-11"
var splittedId = id.split("-");    //["step", "11"]
var no = parseInt(splittedId[1]);  // 11
var step = splittedId[0];          // "step"
var newId = step+"-"+(++splittedId[1]); // "step-12"

您可以做的一件事是将id为的所有div像
step-
一样计数,然后像下面的代码一样将此计数+1

 const test = document.querySelectorAll("div[id*='step-']");
 document.getElementsByClassName('testclass')[0].id='step-'+(test.length+1)

您可以使用正则表达式来解析字符串并检索整数值。但是,使用增量
id
属性通常是一种反模式,因为它会产生超出必要的工作量(如本例所示),并使维护更加困难。我强烈建议您放弃
id
,在单击
a
时使用DOM遍历方法查找相关元素-在这种情况下
next('div')
您的harcoded/fixed选项卡的另一种选择是根本不给它编号:
谢谢,我用上面的代码修复了它。我仍然不得不再次添加
-
,因为它被拆分了。