你好我有这个代码在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();
答案 0 :(得分:0)
由于我没有完整的图片,我猜你没有得到所选选项的价值,所以这里是代码。它评论说“尝试使用这个”:
$(".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();
答案 1 :(得分:0)
另请注意,您需要禁用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! 希望它有所帮助!
答案 2 :(得分:-1)
您可以按F12打开IE开发者控制台,然后运行IE8 JavaScript debugger,然后您可以单步查看发生的情况。