JS如何操作PHP代码段里的标签

例如:

<input type="text" id="car_text" placeholder="请输入要查找的内容" />
    <ul class="dropdown-menu ul1" role="menu" id="ul1">
            <?php
                ...
                    echo "<li role='presentation' value='".$rows['car_brand']."'  data-type='".$rows['car_brand']."' onclick='clickTap(event,1)'><a role='menuitem'    tabindex='-1' value='".$rows['car_brand']."'>".$rows['car_brand']."</a></li>";
                }
            ?>
    </ul>
<script>
var arrList = [];
            var txt = $('#ul1').children('li');
            for (var i = 0; i < txt.length; i++) {
                arrList.push(txt.eq(i).val());
            }
            document.getElementById('car_text').value = arrList;
</script>

现在的情况是我想获取php代码段里所有<li>标签里的值存入<input>标签中,但是不知道如何获取到php代码里li标签的值~自己测试用假数据却可以。

阅读 2.3k
4 个回答

更新

Array.prototype.forEach.call(document.querySelectorAll('#ul1 li'), li => arrList.push(li.value))

按道理这样是可以的,跟你写的其实没差很多,具体是怎样不行呢?


javascript 开始运行的时候,已经没有所谓的 PHP 了。

PHP 在服务端运行, javascript 在浏览器端运行。

javascript 只能获取到 PHP 已经渲染好的东西。

如果你html存在的话,一般情况下是可以获取到通过php输出的html代码的。

  1. 你尝试用$('#ul1').html()获取一下所有的li元素,看有没有内容
  2. ul1这个id是否是唯一

如果上面两点都正常的话,那一般就是你写的js有问题了。

txt.eq(i).attr('value')

PHP经模板引擎解析后前端还能看到PHP代码么?我劝你别费力了。JS也是有所为有所不为的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题