Microsoft Ajax を使用して、json パケットを指定して、連絡先のリストを動的に入力しています。私のコードは次のとおりです。
function fillContactsFromData(contacts) {
// this is just for debug to let me know that the data is correct
if (contacts.length > 0) {
alert('ID: ' + contacts[0].ID + ', Name: ' + contacts[0].Name);
}
$create(Sys.UI.DataView, { data: contacts }, null, null, $get('contacts'));
}
関連する html は次のとおりです。
<div id="contacts" class="sys-template">
<a onclick="removeContact('{{ ID }}');"><img src="remove.png" /></a>
<a class="contact" rel="/Contacts/Index/{{ ID }}">{{ Name }}</a><br />
</div>
最初の <a> タグは連絡先を削除するスクリプトを起動するために使用され、2 番目のタグは jQuery ヒントヒントを使用してホバー時にボックスを表示します (詳細はここではスキップします)。
私が抱えている問題は、HTML が正しくレンダリングされていないことです。生成されているのは次のとおりです。
<div id="contacts">
<a><img src="remove.png" /></a>
<a class="contact" rel="/Contacts/Index/{{ ID }}">Darren Oster</a><br />
</div>
警告ボックスは、有効な ID (Guid) と名前 ("Darren Oster") を持つデータを示します。名前は正しくレンダリングされていますが、ID フィールドは「rel」属性でレンダリングされておらず、「onclick」ステートメントは完全に削除されています。
これは MS Ajax の制限ですか、それとも間違ったことをしていますか?
前もって感謝します。