在InnerHTML页面加载时更新的简单JavaScript循环
当页面加载时,我想生成一个JavaScript循环。项目总数取决于页面上已有的PHP字符串在InnerHTML页面加载时更新的简单JavaScript循环,javascript,jquery,loops,for-loop,innerhtml,Javascript,Jquery,Loops,For Loop,Innerhtml,当页面加载时,我想生成一个JavaScript循环。项目总数取决于页面上已有的PHP字符串 <script type="text/javascript"> function Generation(){ var loopTotal = <?=$TotalNumberOfRows?>; var innerToUpdate=$("#loopItemSet"); var page=0; for (var i=0;i<=<?=$Tot
<script type="text/javascript">
function Generation(){
var loopTotal = <?=$TotalNumberOfRows?>;
var innerToUpdate=$("#loopItemSet");
var page=0;
for (var i=0;i<=<?=$TotalNumberOfRows?>;i+=24)
{
page++;
// document.write(i);
innerToUpdate.innerHTML="<a href='link.php?go="+i+"'> page number "+page+"</a>";
}
}
$(document).ready(function(){
Generation();
});
</script>
函数生成(){
var loopTotal=;
var innerToUpdate=$(“#loopItemSet”);
var-page=0;
对于(var i=0;i您希望使用jQuery的append
与此相反:
innerToUpdate.innerHTML="<a href="link.php?go="+i+""> page number "+page+"</a>";
innerToUpdate.innerHTML=“”;
试试这个:
innerToUpdate.append('<a href="link.php?go='+i+'"> page number '+page+'</a>');
innerToUpdate.append(“”);
检查该行中的引号,我编辑了一些嵌套不好的双引号。此行在每次迭代中覆盖元素的innerHTML
。您可以简单地添加一个+
,如下所示:
innerToUpdate.innerHTML += "<a href='link.php?go="+i+"'> page number "+page+"</a>";
innerToUpdate.innerHTML+=”;
或者先收集字符串中的所有条目,然后只更新该元素的HTML内容一次:
function Generation(){
var loopTotal = <?=$TotalNumberOfRows?>;
var innerToUpdate=$("#loopItemSet");
// var innerToUpdate=$(".loopItemSet"); // for multiple elements.
var page=0, content = '';
for (var i=0;i<=<?=$TotalNumberOfRows?>;i+=24)
{
page++;
// document.write(i);
content += "<a href='link.php?go="+i+"'> page number "+page+"</a>";
}
innerToUpdate.html( content );
}
函数生成(){
var loopTotal=;
var innerToUpdate=$(“#loopItemSet”);
//var innerToUpdate=$(“.loopItemSet”);//用于多个元素。
变量页=0,内容=“”;
对于(var i=0;i问题不清楚,但我假设您只得到一个链接,而不是3个链接,并想知道原因。如下所示:
for (var i=0;i<=<?=$TotalNumberOfRows?>;i+=24)
{
page++;
// document.write(i);
innerToUpdate.innerHTML="<a href='link.php?go="+i+"'> page number "+page+"</a>";
}
for(变量i=0;i;i+=24)
{
page++;
//文件.编写(i);
innerToUpdate.innerHTML+=“”;
}
您当前的代码每次都会重置html,而不是连接到html。您忘了告诉我们,$TotalNumberOfRows
的值是多少。@Jasper,据我所知,这是一个动态创建的数字。@FrankB,是的,但他没有告诉我们问题是什么,而是在嘀咕一些数字,这在我看来毫无意义f并非所有数字都知道n24分为52三次?不,24*3=72。@实际上,贾斯珀虽然我同意这个问题不清楚,但知道这个值与问题的核心无关。如果我有比
更多的内容,我该如何做才能将其插入页面上的所有内容?@TheBlackBenzKidid
意味着唯一,所以你不应该这样做该id的多个元素。使用,例如,class
。然后只需选择所有这些元素,并为每个元素调用html()
。
for (var i=0;i<=<?=$TotalNumberOfRows?>;i+=24)
{
page++;
// document.write(i);
innerToUpdate.innerHTML+="<a href='link.php?go="+i+"'> page number "+page+"</a>";
}