javascript - 在基于 php 的循环上运行 javascript

标签 javascript php

我想在基于 php 的循环中创建基于 JavaScript 的建议输入,这是我的 JavaScript 代码,

<script> 
    $(function() {
        var availableTags = [ 
            <?php do { ?> "<?php echo $row_style['style']; ?>", <?php } 
            while($row_style = mysql_fetch_assoc($style)); ?>];

        $( "#style" ).autocomplete({ source: availableTags });
    });
</script>

这是我的 html 代码,

<html>
    <table>
        <tr><td>no</td><td>style</td></tr>
        <?php $no=1; for ($i=1; $i<=4; $i++){?>   
        <tr><td><?php echo $no++ ?></td><td><input name="style" type="text"></td></tr>
        <?php } ?>
    </table>
</html>

它适用于第一行,但不适用于第二、第三或第四行, 我的代码出了什么问题?

最佳答案

这是一个解决方案:

<?php
$style = '';
while($row_style = mysql_fetch_assoc($style)) {
    $style .= $row_style['style'].',';
}
$style = rtrim($style, ',');
?>

<script>
$(function() {
    var availableTags = [<?php echo $style;?>];
    <?php for ($i=1; $i<=4; $i++){?>
    $( "#style<?php echo $i;?>" ).autocomplete({ source: availableTags });
    <?php }?>
});
</script>

<html>
<table>
    <tr><td>no</td><td>style</td></tr>
    <?php $no=1; for ($i=1; $i<=4; $i++){?>
        <tr><td><?php echo $no++ ?></td><td><input id="style<?php echo $i;?>" name="style" type="text"></td></tr>
    <?php } ?>
</table>
</html>

“#style”被替换为“.style”。

此外,您的 js 数组以“,”结尾,因此现在结尾的逗号已被 trim

关于javascript - 在基于 php 的循环上运行 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40500993/

相关文章:

javascript - 在一定时间后随机更改 wordpress 标题图片

php - 我可以将模型关联到 laravel 中的通知表吗?

javascript - JavaScript中数据URI的图像文件大小

javascript - 单击链接时如何在 jQuery 中显示具有自己 id 的特定 div?

javascript - 函数完成时 Nodejs 回调下一个循环

javascript - 添加动态行后,我无法使用 php 发送数据

PHPUnit:对非公共(public)变量进行断言

php - Laravel 重定向到区域设置更改的路由

javascript - 从 webdriver.io 获取数据后动态构建 Mocha 测试

javascript - 当值更改时更新与 &lt;input&gt; 元素关联的 DB 值