关于JavaScript方法调用的问题

js代码:
function yz(){
var sumspje=0.0;
var sumspsl=0;
var i = 0;
var m = 0;
var spdj;
var alldj=new Array();
var allsl=new Array();

    $('input[name*=spsl]').each(function(){
        allsl[i] = $(this).val();
        sumspsl = sumspsl+parseInt($(this).val());
        i++;
    });

    $('input[name*=spdj]').each(function(){
    alldj[m] = $(this).val();
    sumspje = sumspje + allsl[m]*$(this).val();
    m++;
    });

    $("#sumje").attr("value",parseFloat(sumspje).toFixed(2));
    $("#sumsl").attr("value",sumspsl);
    }

    html代码:
    <input placeholder="请输入数量" name="${i}spsl" style="width:75px;" type="text" value="${l.sl}" onkeyup="this.value=this.value.replace(/[^\d]/g,'');" onblur="yz()"/>

    为什么浏览器会报yz()未定义

上面你那个地方写错了建议排除法。

 <!DOCTYPE html>
<html>
<head>

<script>
 function yz(){
alert('yz()')
}
</script>
</head>
<body>

<input placeholder="请输入数量" name="${i}spsl" style="width:75px;" type="text" value="${l.sl}" onkeyup="this.value=this.value.replace(/[^\d]/g,'');" onblur="yz()"/>
</body>
</html>

你的js是放在页面里面的吗?还是单独的文件?单独的文件是需要在页面引用的。