echo() : オブジェクト入出力関数
echo = function(){
 var a = arguments, n = a.length,i,s,type;
 var o = typeof(a[0]) == "string" ? Fid(a[0]) : a[0];
 if(o.tagName == "SELECT"){
  if(n == 1) return o.options[o.selectedIndex].value;
  else {
   if(typeof(a[1]) == "string"){
    if(a[1] != ""){
     for(i = o.options.length - 1; i >= 0; i--){
      if(o.options[i].value == a[1]) break;
     }
     o.selectedIndex = i > 0 ? i : 0;
    } else o.selectedIndex = 0;
   } else o.selectedIndex = a[1];
  }
 } else {
  type = o.tagName == "TEXTAREA" || o.tagName == "INPUT";
  if(n == 1) return type ? o.value : o.innerHTML;
  else {
   if(n == 2){
    s = a[1]; if(typeof(s) == "object") s = s.join("");
    s = Fx.t2n(s); type ? o.value = s : o.innerHTML = s;
   } else {
    s = o.innerHTML;
    if(a[2] == "add") o.innerHTML = s + a[1];
    if(a[2] == "math") o.innerHTML = Number(s) + a[1];
   }
  }
 }
 return o;
};


第1引数はオブジェクトの指定をする。直接指定でも良いし、idの値の文字列でも良い。

第2引数のあるなしで処理が分かれる。
 ない場合は、オブジェクトの値(innerHTML、または、value)の取得が行われる。
 ある場合は、その値をオブジェクトに代入する処理を行う。

SELECT要素の場合で第2引数があるときは、seletedIndexの変更を行う。
 第2引数が文字列の場合は該当するoption.valueの値と照合する。
 また、数値の場合はselectedIndexにそれを当てはめる。

第3引数がある場合はキーワードで処理が分かれる。
 add : それを要素に追加する。
 math : 要素を数値化して、それを加算する。

戻り値は該当するオブジェクトになる。

カレン
このページをeDispで編集