Javascript 在动态文本字段中显示记录计数器
我有允许用户添加/删除的动态文本字段。首先,该字段将显示数据库中的记录Javascript 在动态文本字段中显示记录计数器,javascript,php,jquery,Javascript,Php,Jquery,我有允许用户添加/删除的动态文本字段。首先,该字段将显示数据库中的记录 $count = 1; foreach($parts as $part) { echo "<input type=\"hidden\" class=\"countNumber\" value=\"".$count."\">"; echo $count++; } $count=1; foreach($parts作为$part) { 回声“
$count = 1;
foreach($parts as $part)
{
echo "<input type=\"hidden\" class=\"countNumber\" value=\"".$count."\">";
echo $count++;
}
$count=1;
foreach($parts作为$part)
{
回声“;
echo$count++;
}
这是我的jQuery动态文本字段JSFIDDLE: 用户单击
+
后,我需要增加我的号码。例如,如果我的数据库由5条记录组成,则计数将为1,2,3,4,5
,然后用户单击动态文本字段添加按钮后,该数字将从上一次计数继续,并将变为6,7,8…
。同样,如果用户单击-
按钮,计数将再次重新排序但我不知道该怎么做。任何帮助/指导都将不胜感激我想您希望获得最后的输入号码
- 如果您将使用classnamecountNumber来回显大量输入
count=$(“.countNumber”).last().val()代码>
- 但如果你这样做,它比你的方法便宜得多:
在php中:
foreach($parts as $part)
{
$count++;
}
echo "<input type=\"hidden\" id=\"countNumber\" value=\"".$count."\">";
echo "<script>count =".$count.";</script>"
- 或者,您可以将php中的计数设置为脚本:
在php中:
foreach($parts as $part)
{
$count++;
}
echo "<input type=\"hidden\" id=\"countNumber\" value=\"".$count."\">";
echo "<script>count =".$count.";</script>"
echo“count=”.$count.;“
重要提示:我建议您不要使用\“
。您可以使用”
分隔符而不使用它
重要提示2:我建议您不要使用var hidden=$('');
附加html元素。只需使用字符串var hidden='';
您可以在单击时使用类并使用重新计数函数重新定义索引。删除。这将重新排序从1开始的输入ID(因此,如果您有1,2,3,4,5,并且删除了3,则所有字段将重新排序为1,2,3,4,下次按+,您将添加5。)
演示:
编辑从5开始的演示:根据您的HTML结构,您可以使用
我用了你的小提琴,把它更新了一点:
CSS的魔力在于:
.container {
counter-reset: records; // Define the counter
}
li,
.added-field {
counter-increment: records; // Increment the counter's value
}
li::before,
.added-field::before {
content: counter(records); // Render the counter's value
}
你的例子已经在做你想做的事情了……?我没有看到任何问题。我看到了你想/需要做的事情的描述,但没有说明你有什么问题。你是想用count跟踪数据库行ID,还是仅仅为了视觉目的而使用is count?@Kisaragi,这个例子不是我想要的。首先,php代码将递增,但当我单击+按钮时,jQuery将检测并继续最新的计数数。但我不确定如何执行。当我单击-按钮时,该数字将再次重新排序。从上面的JSFIDLE中,它仅显示以1
开头的数字,但仍然没有获取我的$count一个来自您重要注释的额外问题,为什么不应该使用它?@Sollo如果它有效,您可以应用我的答案吗?@Solle为您添加了注释2。我仍在尝试您的答案,但我需要在输入一个数字后重新排序序列removed@Sollo如果你想要序列,就不要使用计数!你需要定义id,你可以一直使用use newId=lastId+1;我希望数字从last().val()
中获取。您可以引用,这样您就不想重新排序任何内容了?因为该解决方案只是递增。您是否希望它从5开始,而不是从1开始?我需要重新排序,但我需要获取last().val()
并对其重新排序,而不是仅仅重新排序。因此,我的解决方案很好,它只需要始终从5开始而不是从1开始?是的,它需要从示例中的最后一个值.number
中引用