Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Firefox认为<;字段集>;是一种形式元素;铬不';T_Javascript_Html_Firefox_Google Chrome - Fatal编程技术网

Javascript Firefox认为<;字段集>;是一种形式元素;铬不';T

Javascript Firefox认为<;字段集>;是一种形式元素;铬不';T,javascript,html,firefox,google-chrome,Javascript,Html,Firefox,Google Chrome,在我的JavaScript程序中,我通过表单的元素从表单中获取值,然后在警报中按顺序打印它们。这在Firefox中运行良好,但在Chrome中,顺序很奇怪,最后是“提交”按钮 我试着摆脱这个字段集并调整数字,结果成功了,但我喜欢这个字段集!此外,我不能只是创建一个数组并遍历它,因为字段是调整了制表符顺序的,我想相应地打印它们。有什么建议吗 在尝试验证时,我发现我确实需要用于XHTML Strict的字段集。我将元素存储在一个数组中,如下所示: var $ = function (id) { re

在我的JavaScript程序中,我通过表单的元素从表单中获取值,然后在警报中按顺序打印它们。这在Firefox中运行良好,但在Chrome中,顺序很奇怪,最后是“提交”按钮

我试着摆脱这个字段集并调整数字,结果成功了,但我喜欢这个字段集!此外,我不能只是创建一个数组并遍历它,因为字段是调整了制表符顺序的,我想相应地打印它们。有什么建议吗

在尝试验证时,我发现我确实需要用于XHTML Strict的字段集。我将元素存储在一个数组中,如下所示:

var $ = function (id) { return document.getElementById(id); }

function check() {
var x = $("myForm");

var user = new Array();
user[0] = x.elements[0].value;  
user[1] = x.elements[2].value;  
user[2] = x.elements[4].value;  
user[3] = x.elements[1].value;  
user[4] = x.elements[3].value;  
user[5] = x.elements[5].value;  
然后使用另外两个数组检查它们,并在弹出窗口中显示结果:

var answers = new Array();
answers[0] = "sample1";
answers[1] = "sample2";
answers[2] = "sample3";
answers[3] = "sample4";
answers[4] = "sample5";
answers[5] = "sample6";

var display = new Array();
for (var i=0;i<6;i++) {
    if (user[i] == "") {
        display[i] = "You entered nothing.";
        }
    else if (user[i] == answers[i]) {
        display[i] = "Correct!";
        }
    else {
        display[i] = "Wrong. The correct answer is \"" + answers[i] + "\".";
        }
    }
alert(display[0] + "\n" + display[1] + "\n" + display[2] + "\n" + display[3] + "\n" + display[4] + "\n" + display[5]);
}
var answers=newarray();
答案[0]=“样本1”;
答案[1]=“样本2”;
答案[2]=“样本3”;
答案[3]=“样本4”;
答案[4]=“样本5”;
答案[5]=“样本6”;
var display=新数组();

对于(var i=0;i我认为您最好使用IDs:

<form ...>
  <input ... id="q0" />
  <input ... id="q1" />
  <input ... id="q2" />
</form>

因此,您可以编写以下JavaScript代码:

var answers = new Array();
answers[0] = "sample1";
answers[1] = "sample2";
answers[2] = "sample3";
answers[3] = "sample4";
answers[4] = "sample5";
answers[5] = "sample6";

var display = new Array();
for (var i=0;i<6;i++) {
  var user = $('q' + i).value;
  if (user == "")
    display[i] = "You entered nothing.";
  else if (user == answers[i])
    display[i] = "Correct!";
  else
    display[i] = "Wrong. The correct answer is \"" + answers[i] + "\".";
}
alert(display[0] + "\n" + display[1] + "\n" + display[2] + "\n" + display[3] + "\n" + display[4] + "\n" + display[5]);
var answers=newarray();
答案[0]=“样本1”;
答案[1]=“样本2”;
答案[2]=“样本3”;
答案[3]=“样本4”;
答案[4]=“样本5”;
答案[5]=“样本6”;
var display=新数组();

对于(var i=0;iWebKit bug()。

将表单的HTML和JavaScript添加到问题中。调整什么数字?我怀疑问题在于Chrome以某种内部哈希表顺序给您提供字段(这有点奇怪,因为它在发布表单时必须按顺序交付)。如果您不能只创建一个数组(节点列表),你实际上是如何访问元素的?谢谢,大家--我发现字段集不是严格要求的,我可以用CSS做我需要的事情,但我感谢你们的帮助。呃..没关系,没有字段集我的XHTML Strict无法验证。有人能读一下我的编辑吗?这次我包括了代码。非常感谢你们,太完美了!
var answers = [ "sample1", "sample2", "sample3", "sample4", "sample5", "sample6" ];

var display = new Array();
for (var i=0;i<6;i++) {
  var user = $('q' + i).value;
  if (user == "")
    display.push( "You entered nothing." );
  else if (user == answers[i])
    display.push( "Correct!" );
  else
    display.push ( "Wrong. The correct answer is \"" + answers[i] + "\"." );
}
alert(display.join('\n'));