2011-12-19 8 views
1

私は別の方法で要素を作成していますが、私は最良の方法はわかりません。私は最近、使用してアップつまずいてしまったsetAttributeに代わるもの

var myselect = document.createElement("select"); 
myselect.name="blah"; 

var myselect = document.createElement("select"); 
myselect.setAttribute("name", "blah"); 

:違いは何仕事と私はsetAttributeメソッドを使用していたしません

var label = document.createElement("label"); 
label.for= "blah"; 

。 1つの利点と別の利点と短所があるのですか?

答えて

6

プロパティは、通常、属性の代わりにJavaScriptで処理します。

プロパティはDOMノードにあります。属性はHTMLマークアップになっています。属性は自動的にプロパティに変換されることがあります。

forに関しては、代わりにhtmlForを使用してください。

var label = document.createElement("label"); 
label.htmlFor= "CameraQuality"; 
+0

thx! 'myform.setAttribute(" onclick "、" return validate() ");' – Tom

+0

@TomPepernic:その場合は属性を使うことができますが、最終的にはプロパティ上に関数を作成しますので、これを行うことができます: 'myform.onclick = function(){return validate(); }; '。関数の間には若干の違いがありますが、おそらく関心事は必要ありません。 – RightSaidFred

+0

hrmm、それは何らかの理由で動作しませんでした。間違いなし、私は私の検証ルーチンから何も得ていません... – Tom

関連する問題