電話番号のリストと、それらに対して動作する複数の機能があります。
- 電話番号を編集します。
- 電話番号を削除します。
複数の電話番号があり、それぞれの属性を動的に設定する必要があるため、コンテキストメニューを使用してリストに設定しました。
ヘルパーに電話番号を表示する形式の phonenumber 関数があり、そのコードは次のようになります:-
strOutput = string.Format("<span id=\"spanPhoneId-{0}\">{1}.{2}.{3} ( {4} ) <span id=\"divPopupMenu\" class=\"context-menu-{0}\"><a href=\"#\" title=\"Open Menu\" onclick=\"initializeContextMenuItemForLists({0})\">[ Δ ]</a></span><div id=\"divPopupMenuItems-{0}\" style=\"display: none;\"><ul class=\"bullet-arrow\"><li><a href=\"#divEditSpecifiedPhoneNumber\" class=\"inline UpdateLink phoneIdentity\" title=\"Edit Phone Number\">Edit the phone number</a></li><li><a href=\"#divRemoveSpecifiedPhoneNumber\" class=\"inline UpdateLink phoneIdentityDeletion\"data-phonenumber=\"{1}.{2}.{3} ( {4} )\" title=\"Remove Phone Number\">Remove this phone number</a></li></ul></div></span>", phoneNumber.PhoneId, phoneNumber.AreaCode, phoneNumber.PhoneNo.Substring(0, 3), phoneNumber.PhoneNo.Substring(3, 4), phoneNumber.PhoneNumberTypeInfo.PhoneNumberTypeName, PersonId, CompanyId);
メニューを初期化するためのコードは次のようになります:-
function initializeContextMenuItemForLists(intParameterId) {
var id = "#divPopupMenuItems-" + intParameterId;
jQuery.contextMenu({
selector: '.context-menu-' + intParameterId,
trigger: 'left',
autoHide: true,
items: jQuery.contextMenu.fromMenu(jQuery(id))
});
}
問題は、電話番号を編集してデータ属性を取得しようとすると、古いものだけになることです。コンテキスト メニューのデータ属性は更新されません。
どうすればこれを解決できますか?