比较乐透表格的多个数字

时间:2009-08-08 15:10:06

标签: javascript

我正在尝试学习javascript,但我的知识并未涵盖我想要的内容,所以我可以使用一些帮助。我正在尝试为我们的家人做一个抽签检查表。

要做的是用数字(A)检查数字(B)

<SCRIPT TYPE="TEXT/JAVASCRIPT">

function checkLotto() {
var goed = frmTrekking.EersteGetal.value
var fout = frmGetallen.Opgegeven_1.value

if (frmTrekking.EersteGetal.value == frmGetallen.Opgegeven_1.value) {
document.getElementById('boldStuff').style.color='#00ff00';
document.getElementById('boldStuff').innerHTML = goed;
 }

 else {
document.getElementById('boldStuff').style.color='#ff0000';
document.getElementById('boldStuff').innerHTML = fout;
  }
  }

</script>


<body onload="checkLotto();">
<form id="frmGetallen" name="frmGetallen" method="post" action="">
  <table width="100%" border="0" cellspacing="5" cellpadding="5">
    <tr>
      <td width="9%"><strong>A</strong></td>
      <td width="6%"><strong>Naam</strong></td>
      <td width="10%"><strong>1</strong></td>
      <td width="10%"><strong>2</strong></td>
      <td width="10%"><strong>3</strong></td>
      <td width="10%"><strong>4</strong></td>
      <td width="10%"><strong>5</strong></td>
      <td width="10%"><strong>6</strong></td>
      <td width="10%"><strong>7</strong></td>
      <td width="10%"><strong>8</strong></td>
      <td width="10%"><strong>9</strong></td>
      <td width="10%"><strong>10</strong></td>
    </tr>
    <tr>
      <td><strong>1</strong></td>
      <td><strong>Joop</strong></td>
      <td><b id='boldStuff'><input name="Opgegeven_1" type="hidden" id="Opgegeven_1" value="6" size="5" /> </b></td>
      <td><b id='boldStuff'><input name="Opgegeven_2" type="hidden" id="Opgegeven_2" value="8" size="5" /></b></td>
      <td><b id='boldStuff'><input name="Opgegeven_3" type="hidden" id="Opgegeven_3" value="16" size="5" /></b></td>
      <td><b id='boldStuff'><input name="Opgegeven_4" type="hidden" id="Opgegeven_4" value="18" size="5" /></b></td>
      <td><b id='boldStuff'><input name="Opgegeven_5" type="hidden" id="Opgegeven_5" value="26" size="5" /></b></td>
      <td><b id='boldStuff'><input name="Opgegeven_6" type="hidden" id="Opgegeven_6" value="28" size="5" /></b></td>
      <td><b id='boldStuff'><input name="Opgegeven_7" type="hidden" id="Opgegeven_7" value="32" size="5" /></b></td>
      <td><b id='boldStuff'><input name="Opgegeven_8" type="hidden" id="Opgegeven_8" value="36" size="5" /></b></td>
      <td><b id='boldStuff'><input name="Opgegeven_9" type="hidden" id="Opgegeven_9" value="38" size="5" /></b></td>
      <td><b id='boldStuff'><input name="Opgegeven_10" type="hidden" id="Opgegeven_10" value="41" size="5" /></b></td>
    </tr>

  </table>
</form>
<form id="frmTrekking" name="frmTrekking" method="post" action="">
  <label></label>
  <table width="58%" border="0" cellspacing="5" cellpadding="5">
    <tr>
      <td width="7%"><strong>B</strong></td>
      <td width="10%"><input name="EersteGetal" type="text" id="EersteGetal" value="6" size="5" /></td>
      <td width="10%"><input name="TweedeGetal" type="text" id="TweedeGetal" value="12" size="5" /></td>
      <td width="10%"><input name="DerdeGetal" type="text" id="DerdeGetal" value="20" size="5" /></td>
      <td width="10%"><input name="VierdeGetal" type="text" id="VierdeGetal" value="32" size="5" /></td>
      <td width="10%"><input name="VijfdeGetal" type="text" id="VijfdeGetal" value="5" size="5" /></td>
      <td width="10%"><input name="ZesdeGetal" type="text" id="ZesdeGetal" value="15" size="5" /></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
  </table>
</form>

我现在拥有的是2个数字之间的检查,我需要检查所有数字,所以所有的B号都必须用所有的A号码进行检查。我想我需要在数组中使用一种循环,但我真的不知道如何做到这一点。有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:0)

我假设您希望用户键入一系列数字,然后将它们与另一组进行比较,以查看它们是否匹配。

这个过程将是这样的:

  1. 从页面上的输入中获取数字,存储到数组中。
  2. 将该数组与另一个数组进行比较,以查看所有成员是否相同。
  3. 有很多方法可以做第一步。最简单的方法(绝对不是最好的方式,但最简单的方法)就是这样的:

    var myNumbers = [];
    myNumbers.push(document.getElementById('firstInput'));
    myNumbers.push(document.getElementById('secondInput'));
    myNumbers.push(document.getElementById('thirdInput'));
    myNumbers.push(document.getElementById('fourthInput'));
    

    然后进行比较,将“正确”数字放入数组中,对它们进行排序,然后比较每个成员:

    var correctNumbers = [5,3,7,1];
    correctNumbers.sort();
    myNumbers.sort();
    
    for (var i = 0, l = correctNumbers; i < l; ++i) {
        if (correctNumbers[i] != myNumbers[i]) {
            // they don't match!
        }
    }
    // if you get to here and haven't found any discrepancies,
    // then the two arrays match.