【发布时间】:2016-11-19 21:07:19
【问题描述】:
我想在一些存储在数据库中的 jQuery 元素上附加一个带引号的字符串(例如 < span class='MyClass'> )。这个 sn-p 可以按我的意愿工作。
<script>
$(document).ready(function() {
<?php
$result = mysql_query("SELECT concat(year(`wann`), lpad(month(`wann`),2,0), lpad(day(`wann`),2,0)) as wann, `wieviel` FROM `zecken`");
while($row = mysql_fetch_array($result)) {
for($i=1; $i <= $row["wieviel"]; $i++) {
?>
$('#<?php echo $row["wann"]; ?>').append("<span class='descr bg-danger'>1</span>");
<?php
}
}
?>
});
</script>
我只想完全用 PHP 编写,如果我从 span 中删除 css-classes “descr bg-danger”,它也可以工作。如果没有 css-classes,我的解决方案是:
<script>
$(document).ready(function() {
<?php
$result = mysql_query("SELECT concat(year(`wann`), lpad(month(`wann`),2,0), lpad(day(`wann`),2,0)) as wann, `wieviel` FROM `zecken`");
while($row = mysql_fetch_array($result)) {
for($i=1; $i <= $row["wieviel"]; $i++) {
// How to add a class to this appended span ?????
echo "$('#".$row["wann"]."').append('<span >1</span>'); ";
}
}
?>
});
</script>
如果我必须转义一些引号,我该怎么做? 就像我需要第三对不同的引号来表示跨度:;)
echo "$('#".$row["wann"]."').append('<span class='''descr bg-danger'''>1</span>'); ";
【问题讨论】:
-
要转义引号,您可以使用反斜杠,例如:
.append('<span class=\"class-name\">'); -
如果 concat 汤不是您的风格,您也可以使用
sprintf。sprintf('$("#%s").append("<span class=\"descr bg-danger\">1</span>")'), $row['wann']);