问题描述
- 关于JavaScript方法未定义问题
-
html代码:
《input placeholder="请输入数量" id="[${i}]spsl" style="width:75px;" type="text" value="${l.sl}" onkeyup="this.value=this.value.replace(/[^d]/g,'');" onblur="yz();"》
jsd代码:
function yz(){
var sumspje=0;
var sumspsl=0;
var i = 0;
$('input[name*=spsl]').each(function(){
sumspje = $(this).val()*$(#[i]spdj).html();
sumspsl = sumspsl+$(this).val();
i++;
}
$("#sumje").val(sumspje);
$("#sumsl").val(sumspsl);
}为什么浏览器报:SCRIPT5009: “yz”未定义
解决方案
each(function(){ 是在那里结束的?貌似没看到结束的地方。应该是编译有问题导致报错。添加后就应该没问题了。
解决方案二:
下面的$(#[i]spdj).语法错误了。。导致yz函数根本没有生成。如果你的#[i]spdj是服务器端语言的话,不要讲js代码放入js文件中,要放入动态页里面给服务器端解析器解析执行
sumspje = $(this).val()*$('#[i]spdj').html();
解决方案三:
each方法写的有问题啊,,
解决方案四:
查看你的代码是不是有地方出错了,function定义是可以在html中调用的
解决方案五:
yz()方法不能写进$().ready(function(){})里面,你写出外面就可以了
解决方案六:
语法错误哈,这类问题要仔细检查
时间: 2024-09-28 01:07:21