JS课堂作业,写好调试不出,老出问题

学渣一枚,想看大家的代码。![![![![图片说明](https://img-ask.csdn.net/upload/201703/07/1488876738_575460.png)图片说明](https://img-ask.csdn.net/upload/201703/07/1488876734_606265.png)图片说明](https://img-ask.csdn.net/upload/201703/07/1488876728_871211.png)图片说明](https://img-ask.csdn.net/upload/201703/07/1488876722_718707.png)图片说明

 <table border="1" align="center">
    <tbody>
        <tr>
            <td align="center" colspan="5">简易购物车</td>
        </tr>
        <tr>
            <td>商品名称</td>
            <td>数量(件)</td>
            <td>单价(美元)</td>
            <td>运费(美元)</td>
            <td align="center">
               <input type="button" onclick="compute()" value="合计" />
            </td>
        </tr>
        <tr>
            <td>跑跑道具</td>
            <td>
                <input type="text" id="sl" />
            </td>
            <td>
                <input type="text" id="dj" />
            </td>
            <td>
                <input type="text" id="yf" />
            </td>
            <td>
                <input type="text" id="hj" />美元
            </td>
        </tr>
    </tbody>
</table>
<script>
    function compute() {
        var sl = parseInt(document.getElementById('sl').value) || 0;
        var dj = parseFloat(document.getElementById('dj').value) || 0;
        var yf = parseFloat(document.getElementById('yf').value) || 0;
        document.getElementById('hj').value = sl * dj + yf;
    }
</script>