我正在开发品牌过滤器。当我从下拉列表中更改品牌名称时,我没有得到任何东西;似乎没有触发任何事件。
以下是我的代码:
<select onchange="location.href=[server.url type='fullpage' query='sort=price&brand=$brand']">
<?php
$brands = dfr_get_brands_list($category);
foreach ($brands as $brand) : ?>
<option><?php echo $brand; ?></option>
<?php endforeach; ?>
</select>
[server.url type='fullpage' query='']
会返回当前页面的完整网址,例如:http://www.mysite.com/store/category/shoes/
。
答案 0 :(得分:3)
你不能混用JavaScript和PHP。 JavaScript在客户端上运行,PHP在服务器上运行,它们不能一起运行。
打破HTML标记的逻辑并创建一个函数,在onchange上调用该函数。清理代码,以便于阅读和维护。
您需要做的是更改代码以动态地将品牌添加到网址的末尾
function gotoPage(){
var url = "theBaseUrlHere";
var sel = document.getElementById("yourSelectId");
var brand = sel.options[sel.selectedIndex].text;
window.location.href = url + "&brand=" + brand;
}