我遇到了一些Jquery追加功能的麻烦。我希望有一个周围PHP while循环DIV,所以我做了这个代码和开放div标签被调用,但收盘div标签不与它的开放标签注册:奇怪的JQuery追加不完成DIV
$('.class').append('<div class=\"class_name\">');
\\ While Loop
$('.class').append('</div>');
我遇到了一些Jquery追加功能的麻烦。我希望有一个周围PHP while循环DIV,所以我做了这个代码和开放div标签被调用,但收盘div标签不与它的开放标签注册:奇怪的JQuery追加不完成DIV
$('.class').append('<div class=\"class_name\">');
\\ While Loop
$('.class').append('</div>');
的jQuery只追加完整的元素,如果没有jQuery自动关闭它,你不能追加开头的div标签。尝试构建一个html字符串,然后附加该字符串。
var strOutput = "<div class='class_name'>";
// replace this with php loop: for (var i = 1; i < 10; i++) {
strOutput += i;
// replace this with php loop: }
strOutput += "</div>";
$(".class").append(strOutput);
UPDATE
假设你做了一个PHP while循环,并生成一个名为$ strOutput变量:
$strOutput = "<div class='class_name'>some text here</div>";
它添加到您的JavaScript这样的:
echo "$('.class').append('$strOutput');";
另一个更新
行间阅读!这只是一个例子...建立一个单一的字符串,然后回显它。
$strOutput = "<div class='class_name'>";
// within your while loop...
$strOutput = $strOutput."somevalue";
// now after your while loop...
$strOutput = $strOutput."</div>";
echo "$('.class').append('$strOutput');";
我的PHP while循环如何适合这个? – drummer392 2012-03-09 21:33:57
基本上,使用你的PHP来创建一个长的字符串,然后作为一个单独的div一次追加整个长字符串。我不做很多的PHP,所以我不会发布一个PHP while while循环。如果你发布你的原始循环,我不介意修改它在我的代码中工作。 – 2012-03-09 21:35:03
啊,我明白你在说什么了。我对JS不是很熟悉,但是我的字符串或long变量在你的代码里面呢?只需添加'strOutput + = varName'? – drummer392 2012-03-09 21:38:11
为什么不把while循环的输出放在变量中,然后将它附加到div中。
更新
var output = //the output from the while loop
$('.class').append('<div class=\"class_name\"></div>').append(output);
var div = $('<div class=\"class_name\"></div>').append(output);
$('.class').append(div);
虽然这个概念可行,但它会将输出附加到'.class',而不是生成的'.class_name' div。 – 2012-03-09 21:42:55
你可以保存代码在while循环到varable,然后在jQuery的追加通话回音出来。
正如凯文上面B说,jQuery的追加唯一完整的元素,所以做这样的事情:
<?php
//while loop (save whatever you'd echo/output to a var
?>
$('.class').append('<div class="class_name"><?=$output_from_while_loop?></div>');
刚刚产生你的PHP,然后让jQuery的包装在一个DIV。首先处理PHP,然后将其发送到浏览器,jQuery可以在生成的结果上工作。 – j08691 2012-03-09 21:33:08