在javascript中写了三个function,可是只有第一个运行了,后面两个没有运行,没有报错,求大神解答
<scripttype="text/javascript">$(function(){$("#s1").ready(function(){vars1=document.g...
<script type="text/javascript">
$(function() {
$("#s1").ready(function(){
var s1 = document.getElementById("s1");
var v1 = ${alarmrecord.alarmCategory};
for(var i = 0;i<=s1.length;i++){
if(s1.options[i].value == v1){
s1.options[i].selected = true;
}
}
});
/*******************************以下的都没有运行*********************************/
$("#s2").ready(function(){
var s2 = document.getElementById("s2");
var v2 = "${typeName}";
for(var i = 0;i<=s2.length;i++){
if(s2.options[i].value==v2){
s2.options[i].selected = true;
}
}
});
$("#s3").ready(function(){
var s3 = document.getElementById("s3");
var v3 = ${alarmrecord.alarmMethods};
for(var i = 0;i<=s3.length;i++){
if(s3.options[i].value == v3){
s3.options[i].selected = true;
}
}
});
});
</script> 展开
$(function() {
$("#s1").ready(function(){
var s1 = document.getElementById("s1");
var v1 = ${alarmrecord.alarmCategory};
for(var i = 0;i<=s1.length;i++){
if(s1.options[i].value == v1){
s1.options[i].selected = true;
}
}
});
/*******************************以下的都没有运行*********************************/
$("#s2").ready(function(){
var s2 = document.getElementById("s2");
var v2 = "${typeName}";
for(var i = 0;i<=s2.length;i++){
if(s2.options[i].value==v2){
s2.options[i].selected = true;
}
}
});
$("#s3").ready(function(){
var s3 = document.getElementById("s3");
var v3 = ${alarmrecord.alarmMethods};
for(var i = 0;i<=s3.length;i++){
if(s3.options[i].value == v3){
s3.options[i].selected = true;
}
}
});
});
</script> 展开
3个回答
展开全部
你这个什么意思
var v1 = ${alarmrecord.alarmCategory};
建议你在console控制台里边走一下.既然用了.ready()触发方法,就不要放在$(function(){})里边了.
外边的ready了才执行里边的ready,此时已经不触发了.
var v1 = ${alarmrecord.alarmCategory};
建议你在console控制台里边走一下.既然用了.ready()触发方法,就不要放在$(function(){})里边了.
外边的ready了才执行里边的ready,此时已经不触发了.
追问
var v1获取了从数据库传出来的值,但是我删除了外边的function也是一样的,后两个不能运行,第一个没问题,单独运行也全都没有问题
追答
如果真的如你所说,单独运行都可以的话,那就是javascript引擎的单线程问题了.建议使用setTimeout进行尝试一下.
setTimeout('你后两个不执行的方法',0);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$('#s1').val('${alarmrecord.alarmCategory}');
$('#s2').val('${typeName}');
$('#s3').val('${alarmrecord.alarmMethods}');
追答
// 这样写也可以,没有的话不会赋值了
$('#s1 option[value="${alarmrecord.alarmCategory}"]').attr('selected', true);
$('#s2 option[value="${typeName}"]').attr('selected', true);
$('#s3 option[value="${alarmrecord.alarmMethods"]').attr('selected', true);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你干嘛还要在包一层呢
$(function(){
});
这层去掉
$(function(){
});
这层去掉
更多追问追答
追问
不是这个的问题,外层这个是为了刷新页面之后执行function用的啊
追答
你的$("#s1").ready 这样写法不对啊
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询