在HTML中使用'变量'?

时间:2012-10-18 18:41:57

标签: php javascript jquery html variables

必须改变列表中每个项目的值,因此

<li class="item drawing">
    <a class="fancybox" rel="group" href="images/portfolio/skateboard_l.jpg">
    <img src="images/portfolio/skateboard.jpg" alt="skateboard"/>
    <h3>Skateboard</h3>
    </a>
</li>

是否可能有像

这样的东西
item="Skateboard
<li class="item drawing">
    <a class="fancybox" rel="group" href="images/portfolio/[item-lowercase][if "item"_l.jpg exists, echo"_l"].jpg">
    <img src="images/portfolio/[item-lowercase].jpg" alt="[item-lowercase]"/>
    <h3>[item]</h3>
    </a>
</li>

所以我可以更改列表中每个项目的项目变量,而不是所有单独的条目。我假设这将使用PHP或JS完成?

感谢。

6 个答案:

答案 0 :(得分:2)

我想使用模板。

如果你想在JS中做客户端:

答案 1 :(得分:1)

您可以使用echo在PHP中执行此操作。

例如,如果图片名称存储在$images["myImage"]且alt为$imageAlts["myImage"

<img src="images/portfolio/<?php echo $images["myImage"]; ?>.jpg" alt="<?php echo $imageAlts["myImage"]; ?>"/>

答案 2 :(得分:1)

看起来AngularJS也会有所帮助。它可以让你做这样的事情:

<!doctype html>
<html ng-app>
  <head>
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.min.js"></script>
  </head>
  <body>
    <div>
      <label>Name:</label>
      <input type="text" ng-model="yourName" placeholder="Enter a name here">
      <hr>
      <h1>Hello {{yourName}}!</h1>
    </div>
  </body>
</html>

答案 3 :(得分:1)

Smarty是一个很好的PHP模板系统。如果您想使用PHP来模板化JavaScript,只需从其中一个教程开始(或者查看其他PHP模板系统)。

答案 4 :(得分:1)

在PHP中执行此操作的一种经典方法是在PHP中创建项目数组,然后遍历数组,使用相应的[item-lowercase]条目创建HTML列表项。

我会考虑将[if item exists]作为构建数据数组的过程的一部分,这样您在构建html时就不必执行任何复杂的操作。然后,只需循环遍历数组并显示$ theItem中的内容。

这当然是一种简化。

foreach($itemList as $key=>$theItem){
    ?>
  <li class="item drawing">
   <a class="fancybox" rel="group" href="images/portfolio/<?php echo $theItem ?>

<img src="images/portfolio/[item-lowercase].jpg" alt="[item-lowercase]"/>
<h3>[item]</h3>
</a>
</li>
    <?php

}

答案 5 :(得分:1)

我能想到的最好的解决方案是构建一个数组(我会使用PHP)...然后使用while循环来构建你的列表...把它全部放在一个函数中并在你需要的地方调用它...

例如:

    <?php
        function itemList(){
            $items=array ("skateboard","rollerskates","scooter","rollerblades");             
            reset($items);          
            while (list(, $value) = each($items)) {
                echo '<li class="item drawing">';
                echo '<a class="fancybox" rel="group" href="images/portfolio/' . $value . '_l.jpg">';
                echo '<img src="images/portfolio/' . $value . '.jpg" alt="' . $value . '"/>';   
                echo '<h3>' . $value . '</h3>';                                                   echo '</a>';
                echo '</li>';
            }
        }
    ?>

然后在您的HTML文件中(您希望显示列表的位置):

<ul><?php itemList(); ?></ul>

如果将该函数放在单独的.php文件中,则必须将其包含在HTML文档中:

<?php include ('/url/of/list.php'); ?> 
相关问题