Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 邮资计算器未在IE中输出_Javascript_Html_Internet Explorer - Fatal编程技术网

Javascript 邮资计算器未在IE中输出

Javascript 邮资计算器未在IE中输出,javascript,html,internet-explorer,Javascript,Html,Internet Explorer,我通过Javascript创建的邮资计算器有点麻烦,它应该取一个数量并创建一个变量,该变量乘以一个定义的数字(即邮资成本),然后输出总数(所有变量的总和)。它在除IE之外的所有浏览器中都能完美工作,这让我相信问题不在于JavaScript,而在于HTML。我原以为我已经把问题缩小到了标签上,但我尝试用替换它,但问题仍然存在: <html> <head> <script type="text/javascript"> function calculate() {

我通过Javascript创建的邮资计算器有点麻烦,它应该取一个数量并创建一个变量,该变量乘以一个定义的数字(即邮资成本),然后输出总数(所有变量的总和)。它在除IE之外的所有浏览器中都能完美工作,这让我相信问题不在于JavaScript,而在于HTML。我原以为我已经把问题缩小到了
标签上,但我尝试用
替换它,但问题仍然存在:

<html>
<head>
<script type="text/javascript">
function calculate() {
        var let1 = document.getElementById('let1').value;   
        var let1f = let1 * 0.12;        
        var let2 = document.getElementById('let2').value;   
        var let2f = let2 * 0.16;        
        var ll1 = document.getElementById('ll1').value; 
        var ll1f = ll1 * 0.17;      
        var ll2 = document.getElementById('ll2').value; 
        var ll2f = ll2 * 0.12;      
        var sp01 = document.getElementById('sp01').value;   
        var sp01f = sp01 * 0.30;        
        var sp02 = document.getElementById('sp02').value;   
        var sp02f = sp02 * 0.30;        
        var sp11 = document.getElementById('sp11').value;   
        var sp11f = sp11 * 0.30;        
        var sp12 = document.getElementById('sp12').value;   
        var sp12f = sp12 * 0.30;        
        var mp01 = document.getElementById('mp01').value;   
        var mp01f = mp01 * 0.85;
        var mp02 = document.getElementById('mp02').value;   
        var mp02f = mp02 * 0.80;
        var mp11 = document.getElementById('mp11').value;   
        var mp11f = mp11 * 1.4;
        var mp12 = document.getElementById('mp12').value;   
        var mp12f = mp12 * 1.15;
        var result = document.getElementById('result'); 
        result.value = parseFloat(let1f + let2f + ll1f + ll2f + sp01f +sp02f + sp11f +sp12f +mp01f + mp02f + mp11f + mp12f).toFixed(2);
    }
</script>
</head>
<body>
    <div class="calculator">
        <ul class="column" id="column1">
            <li class="topbar" id="format">Format</li>
            <li>Letters</li>
            <li>Large Letters</li>
            <li>Small Parcel (0-1kg)</li>
            <li>Small Parcel (1-2kg)</li>
            <li>Medium Parcel (0-1kg)</li>
            <li>Medium Parcel (1-2kg)</li>
            <li class="saving">Weekly Saving</li>
        </ul>
        <ul class="column" id="column2">
            <li class="topbar">First Class</li>
            <li><input id="let1" type="number" oninput="calculate()"/></li>
            <li><input id="ll1" type="number" oninput="calculate()"/></li>
            <li><input id="sp01" type="number" oninput="calculate()"/></li>
            <li><input id="sp11" type="number" oninput="calculate()"/></li>
            <li><input id="mp01" type="number" oninput="calculate()"/></li>
            <li><input id="mp11" type="number" oninput="calculate()"/></li>
            <li class="saving">=</li>
        </ul>
        <ul class="column" id="column2">
            <li class="topbar">Second Class</li>
            <li><input id="let2" type="number" oninput="calculate()"/></li>
            <li><input id="ll2" type="number" oninput="calculate()"/></li>
            <li><input id="sp02" type="number" oninput="calculate()"/></li>
            <li><input id="sp12" type="number" oninput="calculate()"/></li>
            <li><input id="mp02" type="number" oninput="calculate()"/></li>
            <li><input id="mp12" type="number" oninput="calculate()"/></li>
            <li class="result">&pound;<output id="result"/></li>
        </ul>
</div>
</body>
</html>

函数计算(){
var let1=document.getElementById('let1').value;
var let1f=let1*0.12;
var let2=document.getElementById('let2').value;
var let2f=let2*0.16;
var ll1=document.getElementById('ll1').value;
var ll1f=ll1*0.17;
var ll2=document.getElementById('ll2').value;
var ll2f=ll2*0.12;
var sp01=document.getElementById('sp01').value;
var sp01f=sp01*0.30;
var sp02=document.getElementById('sp02').value;
var sp02f=sp02*0.30;
var sp11=document.getElementById('sp11').value;
变量sp11f=sp11*0.30;
var sp12=document.getElementById('sp12').value;
var sp12f=sp12*0.30;
var mp01=document.getElementById('mp01')。值;
var mp01f=mp01*0.85;
var mp02=document.getElementById('mp02').value;
var mp02f=mp02*0.80;
var mp11=document.getElementById('mp11')。值;
var mp11f=mp11*1.4;
var mp12=document.getElementById('mp12')。值;
var mp12f=mp12*1.15;
var result=document.getElementById('result');
result.value=parseFloat(let1f+let2f+ll1f+ll2f+sp01f+sp02f+sp11f+sp12f+sp12f+mp01f+mp02f+mp11f+mp12f);
}
    格式
  • 信件
  • 大字
  • 小包裹(0-1kg)
  • 小包裹(1-2kg)
  • 中型包裹(0-1kg)
  • 中型包裹(1-2kg)
  • 每周保存
    头等舱
  • =
  • 二等舱
  • £

Internet Explorer(和Safari)不支持
输出
标记


您可以在它的位置使用
span
。不要设置
result.value
而是使用
result.innerHTML

按照指南进行编辑。这很有效,谢谢您的帮助