我有一个用 PHP 动态创建的选择列表。我还有一个 JQuery 脚本,它根据用户从列表中的选择修改表单,但是单击事件仅在 FF 中识别,而 Safari 或 Chrome 无法识别(尚未尝试 IE)。我尝试更具体地了解 JQ 选择器,但这没有帮助。这是我第一次尝试让网站在所有浏览器上运行,因此非常感谢所有帮助。
HTML
<select id="formcategory" name="Category">
<option value="Select One">Select One</option>
<option class="BloodSample" value="1">Blood Sample</option>
<option class="Exercise" value="2">Exercise</option>
<option class="InsulinInjection" value="3">Insulin Injection</option>
<option class="Meal" value="4">Meal</option>
<option class="Symptoms" value="5">Symptoms</option>
<option class="UrineSample" value="6">Urine Sample</option>
</select>
PHP to create the select list:
<?php
if(!$_POST) {
echo "<option value='Select One'>Select One</option>";
}
else {
echo "<option value='".$_POST['Category']."'>".$_POST['Category']."</option>";
}
foreach($array1 as $key=>$val) {
if($key<10) {
echo "<option class='".(str_replace(" ","",$val))."'value='".$key."'>".$val. "</option>";
}
}
?>
JQ
$('#formcategory').on('click','option',function() {
console.log($(this));//only FF finds the option selected
最佳答案
我不确定这是否是问题的原因,但我不会尝试检测 option
上的 click
事件,而是检测
事件:select
本身的change
$('#formcategory').on('change', function() {
console.log($(this).val());
}
另一个优点是它还允许键盘选择。
关于javascript - 动态选择列表上的单击事件仅适用于 FF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19717182/