私の知る限り、HTML要素のプロパティの実際の順序はブラウザによる解釈に開かれているため、処理しているかどうかを判断する信頼できる方法はありません<input type="radio" name="Q_209" value="A" checked>
。<input checked="true" name="Q_209" value="A" type="radio">
for ... in
ただし、次のステートメントを使用して、要素のすべてのプロパティと値を取得できます。
var foo = document.getElementById('form_id')['Q_209'];
var foo_properties = [];
for (var prop in foo) {
// do something with prop and foo[prop];
}
つまり、要素で見つかったプロパティを、実際に気になるプロパティのサブセット(この特定のタグまたは「html」プロパティのより大きなユニバースに固有)と比較して、要素の「html状態」を取得し、それを再構築するか、それを文字列表現します。
var input_foo = document.getElementById('form_id')['Q_209'];
var awesome_properties = {'type':'','name':'','value':'','checked':''};
var tag = '<input ';
var properties = '';
for (var prop in foo) {
if (prop in awesome_properties) {
properties += ' '+prop+'="'+foo[prop]+'"';
}
}
tag += properties;
tag += '>';
window.alert(tag);