在javascript中从函数返回时遇到问题
在while循环中使用javascript函数时遇到问题。我的函数只执行一次。下面给出了代码 我在while循环中调用了一个函数,该函数调用了另一个函数。 我想执行第一个函数直到while循环结束,但它只执行一次 提前谢谢在javascript中从函数返回时遇到问题,javascript,Javascript,在while循环中使用javascript函数时遇到问题。我的函数只执行一次。下面给出了代码 我在while循环中调用了一个函数,该函数调用了另一个函数。 我想执行第一个函数直到while循环结束,但它只执行一次 提前谢谢 while(p<=10) { k=0; l=0; var contExp= mycontents[p].split("#"); var divExp= mydivs[p].split(",");
while(p<=10)
{
k=0;
l=0;
var contExp= mycontents[p].split("#");
var divExp= mydivs[p].split(",");
var schtime=contExp[k];
alert(contExp[k]);
document.getElementById('gymlocationz').value=contExp[k+1];
document.getElementById('fitness').value=contExp[k+2];
document.getElementById('duration').value="1 hour";
alert(p);
return select_visibility(divExp[l],divExp[l+1],divExp[l+2],contExp[k],mycontents[p]);
//l=l+3;
p++;
}
function select_visibility(str,str1,timeid,time,cont)
{
var contExp= cont.split("#");
var e = document.getElementById(str);
var esub=document.getElementById(str+'sub');
var fulldv=str+'sub';
var result = timeid.match(/([0-9]+)/g);
$('#'+str1).addClass('act');
$('#'+str+'sub').addClass('act');
document.getElementById(timeid).value=time;
document.getElementById('fitness'+result).value=document.getElementById('fitness').value;
document.getElementById('gymlocat'+result).value=document.getElementById('gymlocationz').value;
document.getElementById('selectdrpact'+result).value=contExp[3];
document.getElementById('repeat'+result).value=contExp[4];
var s=document.getElementById('fitness'+result).value;
$("#"+str).css(
{
"background-color":"#95c5ec",
"border":"1px solid #ddd",
"text-decoration":"none",
"padding":"10px 0px",
"margin-left":"30px"
});
$("#"+fulldv).css(
{
"background-color":"#95c5ec",
"border":"1px solid #ddd",
"text-decoration":"none",
"padding":"10px 0px",
"margin-left":"41px"
});
e.style.display = 'block';
esub.style.display = 'block';
selecteditems();
//return true;
}
function selecteditems()
{
var i=1;
var fld = "";
document.getElementById("showselecteditems").innerHTML="";
while(i<=53)
{
fldOne = document.getElementById('datepicker_value').value;
fld = document.getElementById('timedrpact'+i).value;
fidpartnum = document.getElementById('selectdrpact'+i).value;
fidrepeat = document.getElementById('repeat'+i).value;
fit=document.getElementById('fitness'+i).value;
if(fit=="Select")
{
fit="Fitness Not Selected";
}
if(fld!="")
{
//var par='ddwnx'+i;
//alert(fit+","+i+","+fld);
var ele = document.createElement("div");
ele.setAttribute("id","showselecteditems"+i);
ele.setAttribute("class","inner");
ele.innerHTML=fit+" , "+fldOne+" , "+fld+" , "+fidpartnum+" Paticipants, "+fidrepeat+" Repeat";
}
i++;
}
while(p您正在while
循环中使用return
语句。return
语句将导致函数停止运行,并向调用函数的任何代码返回一个值。问题是这一行:
return select_visibility(divExp[l],divExp[l+1],divExp[l+2],contExp[k],
mycontents[p]);
将其更改为:
select_visibility(divExp[l],divExp[l+1],divExp[l+2],contExp[k],mycontents[p]);
这将调用select\u visibility()
函数,而不会导致包含循环的函数终止。您在while
循环中使用return
语句。return
语句将导致函数停止运行,并将值返回给调用该函数的任何代码。问题在于此行:
return select_visibility(divExp[l],divExp[l+1],divExp[l+2],contExp[k],
mycontents[p]);
将其更改为:
select_visibility(divExp[l],divExp[l+1],divExp[l+2],contExp[k],mycontents[p]);
这将调用select\u visibility()
函数,而不会导致包含循环的函数终止。您在while
循环中使用return
语句。return
语句将导致函数停止运行,并将值返回给调用该函数的任何代码。问题在于此行:
return select_visibility(divExp[l],divExp[l+1],divExp[l+2],contExp[k],
mycontents[p]);
将其更改为:
select_visibility(divExp[l],divExp[l+1],divExp[l+2],contExp[k],mycontents[p]);
这将调用select\u visibility()
函数,而不会导致包含循环的函数终止。您在while
循环中使用return
语句。return
语句将导致函数停止运行,并将值返回给调用该函数的任何代码。问题在于此行:
return select_visibility(divExp[l],divExp[l+1],divExp[l+2],contExp[k],
mycontents[p]);
将其更改为:
select_visibility(divExp[l],divExp[l+1],divExp[l+2],contExp[k],mycontents[p]);
这将调用select\u visibility()
函数,而不会导致包含循环的函数终止