JavaScript表单焦点,我的代码看起来没问题吗?

时间:2009-08-22 16:56:56

标签: javascript

今天早上我问了一个关于我的JS语法的一个非常平凡的问题,有人建议我使用他们的代码,所以我继续使用它,因为我几乎知道关于JS的零。

使用我熟练的PHP知识,我稍作修改,添加了第二个带有'else if'语句的ID(见下文),我只是想知道你是否了解更多关于JavaScript的人可以告诉我它是否一切都很好看?

或许你会完全不同地做到这一点?

window.onload = formfocus;

function formfocus()
{
    var id_one;
    var id_two;

    id_one = document.getElementById( 'author' );
    id_two = document.getElementById( 's_primary' );

    if ( id_one )
    {
        id_one.focus();
        id_one.value = '';
    }
    else if ( id_two )
    {
        id_two.focus();
        id_two.value = '';
    }
}

编辑:我对我的window.onload = formfocus();略感担忧......但不确定是否还有其他办法可以实现我想要的目标。

3 个答案:

答案 0 :(得分:3)

它肯定会更简洁,特别是如果你使用jquery。但假设你想坚持使用普通的旧javascript,我至少会更改以下内容:

var id_one;
var id_two;

id_one = document.getElementById( 'author' );
id_two = document.getElementById( 's_primary' );

var id_one = document.getElementById( 'author' );
var id_two = document.getElementById( 's_primary' );

此外,相当标准的做法是不用空格包围函数参数,但我认为这是一个不应该在这里讨论的样式问题。

答案 1 :(得分:0)

虽然您的代码功能正常,但以下内容却不那么详细:

window.onload = function () {
    var id_one = document.getElementById("author");
    var id_two = document.getElementById("s_primary");

    // Original code...
}

如果您计划编写更多Javascript,请考虑一些事项。

答案 2 :(得分:-1)

看起来很好,它易读且容易理解。

为了增加你对javascript语法的了解,你也可以做类似的事情:

function formfocus()
{
    var id_one;
    var id_two;

    id_one = document.getElementById( 'author' );
    id_two = document.getElementById( 's_primary' );

    with(id_one || id_two)
    {
        focus();
        value = '';
    }
}

* ps,我知道这个例子很难看(但我喜欢用“LOL”)。