我有一个电话号码列表和多个功能。
所以我使用了一个上下文菜单并将其设置为列表,因为我有多个语音,并且必须为每个语音动态设置属性。
我在帮助程序中有一个格式语音功能,显示电话号码及其代码如下: -
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))
});
}
问题在于,当我编辑电话号码并尝试获取数据属性时,它只是旧的。 data属性不会在上下文菜单中更新。
我该如何解决这个问题?
答案 0 :(得分:0)
我认为这可能会帮助那些稍后会查看我的问题的用户: -
我尝试通过以下代码销毁我生成的上下文菜单的实例: -
// Destroy the context menu selector already created for the particular instance
$.contextMenu("destroy", ".context-menu-one");
这对我很有效。
希望这对其他人有帮助。