我尝试从数据库中的表中创建数据列表。我使用select选项执行此操作,因为只允许用户选择一个。
我是这样做的:
<select name="test">
<option value="line1">Line1</option>
<option value="line2">Line2</option>
<option value="other.php" onClick="window.location.href='other.php'">
Other
</option>
</select>
这适用于IE和Firefox,但不适用于谷歌浏览器。
将onClick
放在<select>
- 标记中不是一个选项,因为它们没有href,我需要它们的值来获取主键并在表中存储内容。
我希望你能帮助我。
更新:这是我案例的解决方案,由Harry
解决<select name="test" onchange="this.options[this.selectedIndex].value.indexOf('.php')!=-1 &&
(window.location = this.options[this.selectedIndex].value);">
<option value="line1">Line1</option>
<option value="line2">Line2</option>
<option value="other.php">Other</option>
</select>
答案 0 :(得分:0)
这不是有效的HTML。它至少应该是:
<option value="other.php" onClick="window.location.href='other.php'">
答案 1 :(得分:0)
试试这个
<select name="test"
onchange="var val = this.value;
if (val.indexOf('other.php')!=-1) window.location=loc">
<option value="line1">Line1</option>
<option value="line2">Line2</option>
<option value="other.php">Other</option>
</select>
答案 2 :(得分:0)
尝试以下代码并检查它是否解决了您的问题。您无需在href
代码中使用select
值即可生效。 href
可以在您的选项value
标记中。
更新:仅当所选选项标记的value
中包含.php
时,以下代码才会执行重定向。对于前两个选项,不会采取任何措施。
<select name="test"
onchange="this.options[this.selectedIndex].value.indexOf('.php')!=-1 &&
(window.location = this.options[this.selectedIndex].value);">
<option value="line1">Line1</option>
<option value="line2">Line2</option>
<option value="other.php">Other</option>
</select>