2009-05-29 18 views
0

我正在做一个电子商务网站,但处理Javascript正在杀死我。不同的浏览器中的Javascript行为

例如,对于下面的页面,http://nordschleife.metaforix.net/118/118/index.php/sony.html

它可以作为预期谷歌浏览器,而不是在IE或Firefox。例如,点击页面上的产品(例如,第十个产品)的向上或向下箭头将导致页面上升。

我已经使用event.preventDefault();但它不适用于IE和Firefox。该JS如下:

<script type="text/javascript"> 
jQuery(document).ready(function($){ 
    $('#upImg_<?php echo $_product->getId();?>').live("click", function() { 
           var textbox = document.getElementById('qty_<?php echo $_product->getId();?>'); 
           textbox.value = parseInt(textbox.value)+1; 
           event.preventDefault(); 
           }); 
    $('#downImg_<?php echo $_product->getId();?>').live("click", function() { 
            var textbox = document.getElementById('qty_<?php echo $_product->getId();?>'); 
            if (textbox.value>1) 
            textbox.value = parseInt(textbox.value)-1; 
            event.preventDefault(); 
            }); 
           }); 
</script> 

在这个线程回答PHP generated textbox operation with Javascript

谢谢观看。

+0

如果您正在使用jQuery那么为什么VAR文本=的document.getElementById('数量_ <?PHP的echo $ _product->的getId();> ?只要$('#<?php echo $ _product-> getId();?>');然后textbox.value> 1然后变成textbox.val()> 1 – aleemb 2009-05-29 09:00:33

回答

0

问题是#在href中 - 它有一个定义的行为,你需要覆盖它,最简单的方法是在你的点击处理程序中返回false。

编辑:我知道这是一种欺骗 - preventDefault() on an tag

相关问题