$F()是一个能够简化编码量的函数, 对于字段输入控件有效,包括input、textarea、select等,该函数的输入参数为这些输入控件元素对象的id或元素对象本身,函数负责返回 这些输入控件元素对象的值,即value。例如,代码段1和代码段2的对比可以说明该函数对于简化编码量的作用。


代码段1:

<script language=javascript>

function test()

{

    alert(document.getElementById("myInput").value);

}

</script>


<input value="hello world" id="myInput">

<input type=button value=test onclick=test()>


代码段2:

<script language=javascript>

function test()

{

    alert( $F("myInput") );

}

</script>


<input value="hello world" id="myInput">

<input type=button value=test$F onclick=test()>

这里需要说明的一点是,$F("myInput")的返回值尽管等同于 document.getElementById("myInput").value,但是,$F("myInput")只能用来读取元素对象的值,不能 用在等号左边进行赋值运算,例如,如下代码是错误的:


$F("myInput") = "new value"; //这是错误的写法

但是,下面的代码是正确的:


document.getElementById("myInput").value = "new value"; //正确的代码

如果希望利用prototype.js的函数实现上面正确的代码就应该利用上一篇文章提到的$(),代码如下:


$("myInput").value = "new value"; //正确的代码