我已经在Javascript循环上阅读了一堆,但找不到任何适合这种类型的东西。
我有一个网页,用户可以通过与作业关联的任务来定义作业。当他们选择新工作并选择任务时,任务将在行项目表中写入数据库。其作业定义部分加载在父页面的iframe中。 我在父级上有jb1到jb10编号的文本框和id。每个文本框将保存作业的jobid,文本框仅写入正在提交的作业的第一个任务。我希望有人能清楚这一点。
我写了一个非常基本的javascript来检查test的值(最初设置为0,然后在提交第一个任务时增加到1)
我想要帮助的是如何将这50个奇怪的javascript行改为循环,以免使用这么多行。
这是剧本:
<script>
function chkjobnum() {
var id = $("#test").val();
if (id <= 0) {
var id1 = parent.top.$("input#jb1").val();
if (id1 <= 0){
$("#test").val(1);
parent.top.$("input#jb1").val( $("#job").val() );
return; }
var id2 = parent.top.$("input#jb2").val();
if (id2 <= 0){
$("#test").val(1);
parent.top.$("input#jb2").val( $("#job").val() );
return; }
var id3 = parent.top.$("input#jb3").val();
if (id3 <= 0){
$("#test").val(1);
parent.top.$("input#jb3").val( $("#job").val() );
return; }
var id4 = parent.top.$("input#jb4").val();
if (id4 <= 0){
$("#test").val(1);
parent.top.$("input#jb4").val( $("#job").val() );
return; }
var id5 = parent.top.$("input#jb5").val();
if (id5 <= 0){
$("#test").val(1);
parent.top.$("input#jb5").val( $("#job").val() );
return; }
var id6 = parent.top.$("input#jb6").val();
if (id6 <= 0){
$("#test").val(1);
parent.top.$("input#jb6").val( $("#job").val() );
return; }
var id7 = parent.top.$("input#jb7").val();
if (id7 <= 0){
$("#test").val(1);
parent.top.$("input#jb7").val( $("#job").val() );
return; }
var id8 = parent.top.$("input#jb8").val();
if (id8 <= 0){
$("#test").val(1);
parent.top.$("input#jb8").val( $("#job").val() );
return; }
var id9 = parent.top.$("input#jb9").val();
if (id9 <= 0){
$("#test").val(1);
parent.top.$("input#jb9").val( $("#job").val() );
return; }
var id10 = parent.top.$("input#jb10").val();
if (id10 <= 0){
$("#test").val(1);
parent.top.$("input#jb10").val( $("#job").val() );
return; }
}
}
</script>
答案 0 :(得分:0)
这将帮助您入门
for (var i = 1; i < 11; i++) {
var id = parent.top.$("input#jb"+i).val();
if (id <= 0){
$("#test").val(i);
parent.top.$("input#jb"+i).val( $("#job").val() );
return;
}
}
答案 1 :(得分:0)
您需要以下内容:
<script>
function chkjobnum() {
var id = $("#test").val();
if (id <= 0) {
for(i = 0; i <= 10; i++) {
var idi = parent.top.$("input#jb"+i).val();
if (idi <= 0) {
$("#test").val(1);
parent.top.$("input#jb" + i).val( $("#job").val() );
return;
}
}
}
}
</script>