为什么这不起作用的任何想法?
$('a.uiAjaxModal').click(function (e) {
e.preventDefault();
$modalHtml = '<div class="uiModalWrapper"><div class="uiModal"><!--content here--></div></div>';
$($modalHtml).find('.uiModal').load($(this).attr('href'));
$('body').append($modalHtml);
});
<a class="uiAjaxModal" href="/Organisations/New">New</a>
它附加了模态,但内容未加载,我在控制台中没有错误!
同样我怎么能这样做,以便modalHtml仅作为我在代码中完成的点击事件附加到dom但是确保只有一个实例可以存在于屏幕?
答案 0 :(得分:0)
将字符串设置为jquery对象,因为您在ajax中使用了jquery对象,但是您追加的是字符串,而不是jquery引用:
$('a.uiAjaxModal').click(function (e) {
e.preventDefault();
$modalHtml = $('<div class="uiModalWrapper"><div class="uiModal"><!--content here--></div></div>');
$modalHtml.find('.uiModal').load($(this).attr('href'));
$('body').append($modalHtml);
});
<a class="uiAjaxModal" href="/Organisations/New">New</a>
如果您只希望它运行一次,那么请查看jquery中的.one()方法。
答案 1 :(得分:0)
我认为选择器无效。请试试这个
。$( 'uiModalWrapper ')找到('。uiModal ')负载($(本).attr(' HREF'));
答案 2 :(得分:0)
我最终使用的是.ajax()
,而且工作正常并且有更好的选择