我在ASP.Net项目中使用jQuery和SimpleModal来为Web应用程序创建一些不错的对话框.不幸的是,模态对话框中的任何按钮都不能再执行回发,这是不可接受的.
我找到了一个解决方法的来源,但对于我的生活,我无法让它工作,主要是因为我没有完全理解所有必要的步骤.
我也有一个解决方法,即替换回发,但它很难看,可能不是最可靠的.我真的想让回发再次运作.有任何想法吗?
更新:我应该澄清,回发不起作用,因为用于执行回发的Javascript在某种程度上已经破坏,所以当点击按钮时根本没有任何反应.
我想从一个JavaScript函数关闭一个Simplemodal窗口,该函数在提交表单并使用ASP.Net MVC提交结果(AJAX)后自动调用.如何关闭jQuery Simplemodal?
我这样打开它:
$("#popup").modal()
Run Code Online (Sandbox Code Playgroud) 我在jquery中使用了simplemodal弹出窗口,我想根据我的内容动态设置弹出窗口的高度.目前,它固定为500.如果我删除高度属性,它第一次工作,但如果内容增长,那么高度不会自行调整(我的弹出窗口中有标签,每个标签加载不同的内容) .
$("#popup").modal({
containerCss: {
width: 550,
height: 500
},
Run Code Online (Sandbox Code Playgroud) 简单模态失败,jQuery 1.8.0和IE9出错:
SCRIPT438:对象不支持属性或方法'removeExpression'
以下小提琴演示(记得用IE9运行)
http://jsfiddle.net/ericjohannsen/ZVEWa/1/
将jQuery切换到1.7.2会导致错误消失.
有办法解决这个问题吗?
可能相关(OP说问题是jQuery 1.7.1和iframe)
SimpleModal在IE 9中不起作用(在iframe内部)
不相关(jQuery 1.5问题)
我在页面上滚动内容超过2000像素.
如果用户单击div在简单模式窗口中弹出滚动内容.现在我的客户端希望在模态窗口启动时使原始页面不可滚动.(当然模态应该仍然是可滚动的.)
它甚至可能吗?
编辑:我已经尝试了你的建议.基本上它可以工作,但问题有点复杂:
$(".foReadMoreLink a").click(function(){
if ($('#modalBox').length == 0)
$('body').append('<div style="display:none" id="modalBox"></div>')
$('body').css({'overflow':'hidden'});
$.post('jquery/loadarticle.php',{id:$(this).attr('id')},function(data){
$('#modalBox').html(data).modal({overlayClose:'true'});
})
return false;
});
Run Code Online (Sandbox Code Playgroud)
我在链接上使用return false,因此没有JavaScript的机器人和用户(是的,那是2%)可以打开文章.使用上面的代码它按预期工作,但在关闭模式后我必须返回滚动条但这段代码不起作用:
$(".foReadMoreLink a").click(function(){
if ($('#modalBox').length == 0)
$('body').append('<div style="display:none" id="modalBox"></div>')
$('body').css({'overflow':'hidden'});
$.post('jquery/loadarticle.php',{id:$(this).attr('id')},function(data){
$('#modalBox').html(data).modal({onClose:function(){$('body').css({'overflow':'auto'})},overlayClose:'true'});
})
return false;
});
Run Code Online (Sandbox Code Playgroud) 我想在UI工具包中使用像simple-modal这样的加载项或对话框加载项.但是,我如何使用这些或任何其他方法并获得结果.基本上我希望模态与服务器进行一些ajax交互,并返回调用代码的结果来做一些事情.谢谢.
我是ajax/jquery的新手,很难找到包含以下内容的简单示例:
我希望用户能够单击视图(父级)中的链接/按钮,并显示包含表单的模式表单.模态对话框的内容应该是MVC视图(Child).
提交表单后,我希望模式对话框消失,并且要更新父视图的一部分.
早上好!
我正在使用Eric Martin的jQuery SimpleModal插件.目前,我正在使用iframe加载模式以加载我按预期工作的请求页面.我想要实现的是一个Loading ... spinner,它在内容加载时显示.
我正在加载我的模态如下:
jQuery(function ($) {
// Load dialog on click
$('.basic').click(function (e) {
var src = "http://localhost" + $(this).attr("href");
$.modal('<iframe id="details" class="so" src="' + src + '" height="500" width="500" style="border:0">', {
closeHTML: "<a title='Close' class='modalCloseImg simplemodal-close'></a>",
containerId: "simplemodal-container",
overlayId: "simplemodal-overlay",
overlayClose: true
});
return false;
});
});
Run Code Online (Sandbox Code Playgroud)
我有一个为我的模态容器设置的背景图像,它立即显示.我肯定更愿意在这里展示一个加载微调器.
我将这两个插件都包含在同一页面中,这会导致它们之间发生冲突。
我删除了 Bootstrap.min.js 并且 SimpleModal 工作正常。我删除了 jquery.simplemodal.js 并且 Bootstrap 模态工作正常。如果在 bootstrap.min.js 之前包含 jquery.simplemodal.js,我尝试调用 bootstrap modal
如果在 Bootstrap 之后包含 SimpleModal,我会在 Firebug 控制台上收到此错误
i.modal(...).one is not a function **..blah blah..** bootstrap.min.js (line 6)
Run Code Online (Sandbox Code Playgroud) jquery simplemodal twitter-bootstrap bootstrap-modal twitter-bootstrap-2
我正在开发一个Wordpress主题,在模式框中打开新帖子而不是单独的页面.
当帖子在自己的页面上时,我用来显示每个帖子的图像幻灯片插件(jQuery Cycle Plugin)很有用,但是当使用Simple Modal插件时,图像以列表而不是幻灯片形式显示,彻底打破我的布局.
这是帖子自己的样子(点击图片以推进幻灯片演示):http://cl.ly/240c3C0i1m1o
你可以点击这个页面上的第一个缩略图,看看模态是如何工作的(我还没有用于模态的唯一URL编码):http://cl.ly/3A2J1V2q1T0P
我假设jQuery Cycle插件在模式框中不起作用,因为它在通过单击链接加载模态内容之前将其自身应用于页面?我真的不知道.
任何帮助将非常感激.我用这个答案来帮助我实现模态框:使用带有wordpress的simplemodal.我在下面的主题中包含了一些相关代码.
这是在我的header.php文件中:
<?php
wp_enqueue_script('jquery.cycle.all.min.js', '/wp-content/themes/Goaty%20Tapes%20Theme/js/jquery.cycle.all.min.js', array('jquery'));
wp_enqueue_script('product-slideshow', '/wp-content/themes/Goaty%20Tapes%20Theme/js/product-slideshow.js');
?>
Run Code Online (Sandbox Code Playgroud)
这是包含在product-slideshow.js(启动循环插件的设置)中的内容:
$(document).ready(function() { $('.product-images').cycle({
fx: 'none',
next: '.slide',
timeout: 0
}); });
Run Code Online (Sandbox Code Playgroud)
我有这个functions.php让模式工作:
function my_print_scripts() {
if (!is_admin()) {
$url = get_bloginfo('template_url');
wp_enqueue_script('jquery-simplemodal', 'http://66.147.244.226/~goatytap/wp-content/themes/Goaty%20Tapes%20Theme/js/jquery.simplemodal.1.4.1.min.js', array('jquery'), '1.4.1', true);
wp_enqueue_script('my_js', 'http://66.147.244.226/~goatytap/wp-content/themes/Goaty%20Tapes%20Theme/js/site.js', null, '1.0', true);
}
}
add_action('wp_print_scripts', 'my_print_scripts');
Run Code Online (Sandbox Code Playgroud)
这是在我的site.js档案中:
jQuery(function ($) {
$('a.popup').click(function(){
id = this.rel; …Run Code Online (Sandbox Code Playgroud) jquery ×10
simplemodal ×10
ajax ×2
javascript ×2
modal-dialog ×2
asp.net ×1
asp.net-mvc ×1
iframe ×1
jquery-cycle ×1
jquery-ui ×1
loading ×1
postback ×1
scroll ×1
spinner ×1
wordpress ×1