私の理解が正しければ、関数が返すもので HTML 要素の属性を変更したいと思うでしょう。
HTML ドキュメントのどこかに次の BUTTON 要素があるとします。
<button id="myButton" name="John"> See my name. </button>
jQuery で次のようなものを使用して、属性「name」を変更することができます。
var new_name = "Colin";
$("#myButton").attr("name", new_name);
したがって、関数によって返される任意の値を使用してこのボタンの名前を変更する場合は、関数が文字列を返すことを確認して、次のようにします。
var new_name = myFunction(); // This functions returns a string.
$("#myButton").attr("name", new_name);
... またはよりコンパクトなバージョン:
$("#myButton").attr("name", myFunction());
しかし、定義済みの特定の値だけでなく、関数自体が選択する値を変更する関数が必要な場合はどうでしょうか。jQueryのattr()
関数では、オブジェクトをパラメーターとして使用できます。このオブジェクトは、属性/値のペアで構成されます。前のコードは次のようになります。
var new_attribute = {"name": "Colin"};
$("#myButton").attr(new_attribute);
また、前に行ったのと同じように、オブジェクトを返す関数を作成{"name": "value"}
し、その関数を の引数として呼び出すことができます.attr
。
var new_attr = myOtherFunction(); // This functions returns an object
$("#myButton").attr(new_attr);