比如有这样一段HTML段:
|
XML/HTML |
- <body>
- <input name="namebox" id="namebox1" type="text" value="1" />
- <input name="namebox" id="namebox2" type="text" value="2" />
- <input name="namebox" id="namebox3" type="text" value="3" />
- <input name="namebox" id="namebox4" type="text" value="4" />
- <input name="namebox" id="namebox5" type="text" value="5" />
- </body>
|
接下下来有这样的一段javascript语句:
|
JavaScript |
- var box = document.getElementsByName("namebox");
- for (int i="0;i<box.length;i++)
- {
- var Exm = "as|5|sfs";
- var sp = Exm.split('|');
- var boxval = box[i].value;
- if (boxval > sp[1])
- {
- //按理说这里是真不来的,因为input最大值为4,但是这里却可以进来,很奇怪.
- alert('123');
- }
- }
|
这种情况可是冒泡出的问题,if 语句,不管直假,都进得去.很是郁闷.
其实这里可以用一种方法来解解,看下面的语句:
|
JavaScript |
- //if 语句改为:
- (function()
- {
- if (boxval > sp[1])
- {
- alert("123");
- }
- })();
- //就可以正常.
|