繁体   English   中英

我的Javascript代码在chrome中不起作用

[英]My Javascript code doesn't work in chrome

我在我的页面上写了ajax,在select选项中获取子类别,具体取决于类别选项列表单击。 在所有浏览器中它都运行良好,我可以看到我的请求,在浏览器控制台中的响应......但在chrome函数中甚至不会调用。 你知道吗,问题是什么? 这是我的代码:

    <td>
      <span style="color: #898989;">Main categories</span>
      <br />
      <select style="width: 200px;">
        <?foreach ($main_categories as $item){?>
        <option onclick="get_sub_cat(<?=$item['id']?>,2);return false;" value="<?=$item['id']?>"><?=$item['title']?></option>
        <?}?>
      </select> 
    </td>
    <td>
      <span style="color: #898989;">Subcategories</span>
      <br />
      <select  name="sub_cat" style="width: 200px;" id="prod_subcat_2">
      </select> 
    </td>


function get_sub_cat(id, select_id){
$.ajax({
   type: "POST",
   url: "<?=base_url()?>admin/product/get_sub_cat/"+id,
   data: "",
   success:function (option_list) {
     $("#prod_subcat_"+select_id).children().remove();
     $('#prod_subcat_'+select_id).append(option_list);
   }
 });
}

不支持普遍支持<option>元素onclick ,而是使用父<select>的事件

$('#theselect').change(function() {
   alert( $(this).val() );
});​

1)如果你在本地文件夹上运行而不是在服务器上运行,那么chrome有安全理由不运行这些类型的javascript调用。 关于运行localy javascript ajax调用chrome的堆栈溢出有多个线程,如果是这样的话。

2)尝试使用简单警报的javascript(“嘿”); 检查javascript是否正常工作或其ajax。

3)如果javascript工作。 使用谷歌“开发人员工具”ctrl + shift + i,在你的javascript调用上设置断点,并检查什么作为变量传递并解决问题。

4)如果javascript无效,请尝试http://support.google.com/chrome/bin/answer.py?hl=zh-CN&answer=114662

尝试附加onchange事件处理程序并从事件中传入的select元素中获取所选元素。 将事件处理程序附加到单个选项可能没有意义。

你需要添加一些引号:

get_sub_cat(\"<?=$item['id']?>\",2)

您需要将此参数作为字符串发送。

你确定你的JavaScript在<script>标签中吗? 问题没有显示出来

<script>
   // your javascript
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM