为什么这个功能不适用于IE 7,8?

时间:2014-12-02 08:29:09

标签: javascript jquery html css internet-explorer

如何申请IE7上的工作,8

进行测试,将1填入输入然后按下按钮,输入将边框更改为红色并返回false。

但ie7 8并非全部工作。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>

<form onsubmit="return checkform(this);">
<div>
    <p>
        <label>            
            <input type="text" class="price" size="20" name="price[]">
        </label>
    </p>
</div>
<div>
    <p>
        <label>
            <input type="text" class="price" size="20" name="price[]">
        </label>
    </p>
</div>
<div>
    <p>
        <label>
            <input type="text" class="price" size="20" name="price[]">
        </label>
    </p>
</div>
<input type="submit" name="submit" value="OK">
</form>

<script language="JavaScript" type="text/javascript">
function checkform ( form )
{  
  var list = document.querySelectorAll(".price");
  var z;
  var input;
  var isValid = true;
  var value;

  // Loop through the list
  for (z = 0; z < list.length; ++z) {
    console.log("z = " + z);
    // Get this input
    input = list[z];

    // Check its value
    if (input.value != "" && parseInt(input.value, 10) < 1.5) {
      input.style.border = "1px solid red";
      isValid = false;
    }
    else {
      input.style.border = "1px solid #d5d5c5";
    }
  }

  // Return result
  return isValid;
}
</script>

1 个答案:

答案 0 :(得分:1)

querySelectorAll是一个HTML5 DOM API,IE7,8尚未准备就绪。

有关详细信息,请参阅this page

或者,由于您使用的是jquery,因此可以改为使用$(".price")