Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.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 web浏览器脚本不工作_Javascript_Browser - Fatal编程技术网

Javascript web浏览器脚本不工作

Javascript web浏览器脚本不工作,javascript,browser,Javascript,Browser,Internet Explorer 7无法正确处理按钮,因为它发送的是介于和之间的文本,而不是值。(奇怪但正确)这个Javascript应该通过发送按钮onClick的值来纠正这个错误。但它不起作用。有人能看出错误吗 我使用它来附加HTML5中的Javascript文件: <script src="buttonfix.js"></script> buttonfix.js的内容: function runonclick() { var count = 0;

Internet Explorer 7无法正确处理按钮,因为它发送的是介于
之间的文本,而不是值。(奇怪但正确)这个Javascript应该通过发送按钮
onClick
的值来纠正这个错误。但它不起作用。有人能看出错误吗

我使用它来附加HTML5中的Javascript文件:

<script src="buttonfix.js"></script>

buttonfix.js的内容:

function runonclick()
{
    var count = 0;
    var formlength = this.form.elements.length;
    while(count < formlength)
    {
        if(this.form.elements[count].tagName === "button")
        {
            this.value = this.attributes.getNamedItem("value").nodeValue;
        }

        count++;
    }
}

function buttonfix()
{
    var buttonarray = document.getElementsByTagName("button");

    var count = 0;
    var buttonarraylength = buttonarray.length;
    while(count < buttonarraylength)
    {
        buttonarray[count].onClick = runonclick();

        count++;
    }
}

window.attachEvent("onload", buttonfix());
函数runonclick()
{
var计数=0;
var formlength=this.form.elements.length;
while(count
我建议您尝试:

if(this.form.elements[count].tagName.toLowerCase == "button");
而不是:

if(this.form.elements[count].tagName == "button")
因为
标记名
属性通常返回大写字符串

另一行不起作用:

buttonarray[count].onClick = runonclick();
由于JavaScript是区分大小写的语言,因此必须使用事件的标准名称(
onclick

但是,您仍然可以在HTML(但不是XHTML)中使用
onClick

我建议你试试:

if(this.form.elements[count].tagName.toLowerCase == "button");
而不是:

if(this.form.elements[count].tagName == "button")
因为
标记名
属性通常返回大写字符串

另一行不起作用:

buttonarray[count].onClick = runonclick();
由于JavaScript是区分大小写的语言,因此必须使用事件的标准名称(
onclick


但是,您仍然可以在HTML(但不是XHTML)中使用
onClick

什么东西不起作用?@Felix Kling Javascript不会让按钮发送值而不是文本。我使用了jslint,所以问题一定与语法无关。到底什么不起作用?@Felix Kling Javascript不会让按钮发送值而不是文本。我使用了jslint,所以问题一定与语法无关。