我的页面中有以下选择选项,我想按顺序随机化.
<select class="selectpicker1 show-menu-arrow span2" onchange="updatePreview();">
<option data-content="<img src='img/render/3-thumb.jpg'>" value="3.jpg">three</option>
<option data-content="<img src='img/render/5-thumb.jpg'>" value="5.jpg">five</option>
<option data-content="<img src='img/render/1-thumb.jpg'>" value="1.jpg">one</option>
<option data-content="<img src='img/render/2-thumb.jpg'>" value="2.jpg">two</option>
<option data-content="<img src='img/render/4-thumb.jpg'>" value="4.jpg">four</option>
<option data-content="<img src='img/render/6-thumb.jpg'>" value="6.jpg">six</option>
<option data-content="<img src='img/render/7-thumb.jpg'>" value="7.jpg">six</option>
</select>
Run Code Online (Sandbox Code Playgroud)
到目前为止,我有以下代码,但它不起作用,这是随机化订单的最简单方法吗?并且代码有问题吗?
<?php
$options=array( '<option data-content="<img src="img/render/3-thumb.jpg">" value="3.jpg">three</option>',
'<option data-content="<img src="img/render/5-thumb.jpg">" value="5.jpg">five</option>',
'<option data-content="<img src="img/render/1-thumb.jpg">" value="1.jpg">one</option>');
shuffle($options);
echo '<select class="selectpicker1 show-menu-arrow span2" onchange="updatePreview();">';
foreach ($options as $picker) {
echo '$picker'; }
echo '</select>'; ?>
Run Code Online (Sandbox Code Playgroud)
变量在单引号内时不进行插值.
echo '$picker'; }
Run Code Online (Sandbox Code Playgroud)
应该只是:
echo $picker; }
Run Code Online (Sandbox Code Playgroud)
此外,为了修复HTML标记,您可以简单地转义引号,如下所示:
'<option data-content=\'<img src="img/render/3-thumb.jpg">\'
value="3.jpg">three</option>'
Run Code Online (Sandbox Code Playgroud)
而且,为了缩短这个,你可以foreach用一个简单的implode()语句替换循环,如下所示:
shuffle($options);
echo '<select class="selectpicker1...">';
echo implode("\n", $options);
echo '</select>';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
76 次 |
| 最近记录: |