Javascript 动态选择列表上的单击事件仅在FF中有效

Javascript 动态选择列表上的单击事件仅在FF中有效,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我有一个用PHP动态创建的选择列表。我还有一个JQuery脚本,它根据用户从列表中选择的内容修改表单,但是单击事件仅在FF中识别,而Safari或Chrome尚未尝试IE。我试着用JQ选择器更具体一些,但那没有帮助。这是我第一次尝试让一个网站在所有浏览器上运行,因此非常感谢所有帮助 HTML 我不确定这是否是问题的原因,但我不会尝试检测选项上的单击事件,而是选择本身的更改事件: 另一个优点是,它还允许键盘选择。尝试“更改”-$“formcategory”。在“更改”,“选项”,函数{或$“for

我有一个用PHP动态创建的选择列表。我还有一个JQuery脚本,它根据用户从列表中选择的内容修改表单,但是单击事件仅在FF中识别,而Safari或Chrome尚未尝试IE。我试着用JQ选择器更具体一些,但那没有帮助。这是我第一次尝试让一个网站在所有浏览器上运行,因此非常感谢所有帮助

HTML


我不确定这是否是问题的原因,但我不会尝试检测选项上的单击事件,而是选择本身的更改事件:


另一个优点是,它还允许键盘选择。

尝试“更改”-$“formcategory”。在“更改”,“选项”,函数{或$“formcategory”。changefunction{我明白了。如果我切换到change event$,这将成为select元素,我想我将必须获取所选选项?@user2232681是的,这就是我使用.val的目的。
<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        
$('#formcategory').on('change', function() {
    console.log($(this).val());
}