【发布时间】:2011-12-03 23:28:31
【问题描述】:
基本上,我有一个动态创建的列表,我事先不知道会有多少项目。
我需要每个人在点击时启动一个稍微不同的 Ajax 函数。
我目前正在将 JQM 用于模态框(如果有人知道更好的东西,很乐意切换)。
以下代码适用于使所有 .ajaxpopup 项目启动同一页面:
$().ready(function () {
$('#dialog').jqm({ ajax: "/QuestionManager/AjaxPopup/1", trigger: ".ajaxpopup" });
$(".ajaxpopup").click(function (e) {
e.preventDefault();
});
但是,我需要每个项目启动一个不同的页面(1/2...我不知道事先的 ID)。
我真的很喜欢亚当关于向元素添加 data-itemid 标记的回答,但是,我似乎无法真正做到这一点。
我不知道这是 JQM 限制还是由于它的启动方式。
我最接近的是:
$(document).on("click", "a", function () {
var itemId = $(this).data("itemid");
$('#dialog').jqm({ ajax: "/QuestionManager/AjaxPopup/"+itemId, trigger: ".ajaxpopup" });
});
我还用alert(itemId) 替换了对话框行,这给出了正确的结果,所以,我知道我走在正确的道路上 - 我似乎无法完成这件事!
谁能帮忙?
【问题讨论】:
标签: c# javascript jquery asp.net-mvc-3 razor