第二次尝试时for循环不能在JavaScript中工作

时间:2018-01-02 06:14:54

标签: javascript jquery html spring-mvc

我陷入了一个非常奇怪的问题需要帮助。 实际上我正在尝试为动态生成的输入字段分配一些值。所以我尝试了以下代码片段。我的意思是说在第一步中我只需要为前10个ID分配值,然后再为其余的ID分配一些其他值然后失败

的JavaScript

 <script type="text/javascript">

    function callAssignMark() {

        var rightMarkVal = $("#rightMarkVal").val();
        var wrongMarkVal = $("#wrongMarkVal").val();
        var initial= $("#from").val();
        var last= $("#to").val();
        console.log('fromWhere--'+initial);
        console.log('to---'+last);
        alert('Before Loop');
        for (var i = initial; i <= last; i++) {
            $('#rightMark_' + i ).val(rightMarkVal);
            $('#wrongMark_' + i ).val(wrongMarkVal);
            $('#selectData_' + i).prop('checked', 'checked');
        }
        $("#from").val('');
        $("#to").val('');
    }

</script>

上面的JavaScript代码在第一次尝试时工作正常意味着当我为initiallast变量赋值时,循环迭代并按预期工作并将所需的值分配给动态生成的输入字段,但是现在问题是当我为initiallast变量分配新值时,loop无法再迭代。 还有一件事我想告诉大家输入字段的所有动态ID都是正确生成的,我还得到了第二次尝试时将分配给输入字段的值,我的HTML看起来就像下面一样。

HTML

<div>
  <div>
    <ul>
      <li>
        <label>From</label>&nbsp;&nbsp;
        <input name="" id="from" type="text" placeholder="from" value="" />
        <label>To</label>&nbsp;&nbsp;
        <input name="" id="to" type="text" placeholder="to" value="" />
        <input name="rightMarkVal" id="rightMarkVal" type="text" placeholder="positive Value" value="" />&nbsp;&nbsp;
        <input name="wrongMarkVal" id="wrongMarkVal" type="text" placeholder="Negative value" value="" />&nbsp;&nbsp;

        <input type="button" class="btn btn-success" value="Assign Marks" onclick="callAssignMark()">
      </li>&nbsp;&nbsp;
    </ul>
  </div>

  <c:set var="counter" value="0" scope="page" />

  <div>
    <table>
      <th>S.No</th>
      <th>
        <input type="checkbox" id="selectAllCheckBox">
      </th>
      <th>Right Marks</th>
      <th>Wrong Marks</th>
      <tbody>
        <c:forEach var="list" items="${List}" varStatus="loop">
          <tr>
            <td>
              <c:out value="${counter = counter+1 }" />
            </td>
            <td>
              <form:checkbox path="qId" id="selectData_${counter}" value="${list.id}">
              </form:checkbox>
            </td>
            <td>
              <form:input path="rightMark" id="rightMark_${counter}" value="" />
            </td>
            <td>
              <form:input path="wrongMark" id="wrongMark_${counter}" value="" />
            </td>

          </tr>
        </c:forEach>

      </tbody>
    </table>
  </div>
</div>

我无法找出问题所在,所以请帮助我。 任何帮助将不胜感激。感谢

0 个答案:

没有答案