IE 8中的Jquery问题

jk9hmnmh  于 2023-10-17  发布在  jQuery
关注(0)|答案(3)|浏览(90)

你好,我有这个代码,在Firefox中完美的作品,但在IE 8不工作,不给我任何错误给予?!

$(".shp_div").change(function () {
      var str = "";
      $("select option:selected").each(function () {
           var countprod =parseInt($("#countprod").val());
            var str2 = $(this).val();
            str2_array = str2.split('|');
            var cost = parseInt(str2_array[0]);
            var cost_extra = parseInt(str2_array[1]);
            if ($("#countprod").val()>1) {
            str = parseInt(((countprod-1)*cost_extra) + cost);
            } else{
            str = cost;
          }});
      $(".csq_item2").text(str);
       var total =parseInt($("#subtotal").val());
      var shipping=parseInt(str + total);
      $(".price_total").text(shipping);
    })
    .change();
omhiaaxx

omhiaaxx1#

由于我没有完整的图片,我猜你没有得到所选选项的值,所以这里是代码.它的评论是“尝试使用这个”:

$(".shp_div").change(function () {
      var str = "";
      $("select option:selected").each(function () {
           var countprod =parseInt($("#countprod").val());
            // var str2 = $(this).val();
            var str2 = $(this).attr("value");  // Try using this!
            str2_array = str2.split('|');
            var cost = parseInt(str2_array[0]);
            var cost_extra = parseInt(str2_array[1]);
            if ($("#countprod").val()>1) {
            str = parseInt(((countprod-1)*cost_extra) + cost);
            } else{
            str = cost;
          }});
      $(".csq_item2").text(str);
       var total =parseInt($("#subtotal").val());
      var shipping=parseInt(str + total);
      $(".price_total").text(shipping);
    })
    .change();
zu0ti5jz

zu0ti5jz2#

还要注意,您需要禁用quirksmode,以便伪元素工作。使用DOCTYPE STRICT。例如,如果你使用php,你可以用一个包含的头文件做这样的事情:<?php
function callback($buffer) {
return (str_replace("<!doctype html>", '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">', $buffer));
}
ob_start("callback");
include('includes/header.php');
ob_end_flush();
?>
但是需要注意的是,你需要使用DOCTYPE strict!希望有帮助!

vtwuwzda

vtwuwzda3#

您可以按F12打开IE开发人员控制台,然后运行IE8 JavaScript debugger,然后您可以逐步查看发生了什么。

相关问题