Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在Rails中添加一个模态对话框?_Ruby On Rails_Jquery_Modal Dialog - Fatal编程技术网

Ruby on rails 在Rails中添加一个模态对话框?

Ruby on rails 在Rails中添加一个模态对话框?,ruby-on-rails,jquery,modal-dialog,Ruby On Rails,Jquery,Modal Dialog,我想在我的应用程序中添加一个Ajax链接。当我点击链接时,它会弹出一个模式对话框,其中包含事件的详细信息。。 我在助手类中添加此链接 link_to(event.name, events_path(@event), :remote => true 然后我创建js文件,将内容插入到隐藏的div中 $('.modal').html(<%= escape_javascript(render(@event)) %>); $('.modal').dialog(); $('.m

我想在我的应用程序中添加一个Ajax链接。当我点击链接时,它会弹出一个模式对话框,其中包含事件的详细信息。。 我在助手类中添加此链接

 link_to(event.name, events_path(@event), :remote => true 
然后我创建js文件,将内容插入到隐藏的div中

$('.modal').html(<%= escape_javascript(render(@event)) %>); 
$('.modal').dialog(); 
$('.modal').html();
$('.modal').dialog();
在这里模态是我隐藏的div。但是它不能弹出任何模态对话框。我无法理解错误是什么,为什么不起作用。有人能帮我纠正这个吗?

改变

$('.modal').html()

$('.modal').html(“”)

从JS的角度来看,您的代码将是无效的,因为您没有将渲染用引号括起来,它将尝试评估您的HTML

编辑

如果您试图在
show
单击时链接到此,则需要使用
show.js.erb
来显示模式对话框,而不是
create.js.erb
<代码>创建
仅当您
将表单发布到
/events
时才会被调用,而在这里,您似乎只是试图显示事件的详细信息


将上面的代码(带引号)放在
show.js.erb
中,确保在控制器上的
show
方法中有
respond.js
响应,然后重试。

可能是因为rails默认为Prototype库,所以您没有安装Jquery。我将升级到Rails 3.1,这使得jquery的使用变得简单:

rails新示例-jquery

或安装jquery:

谢谢。。。但它仍然不起作用。没有错误。但它并没有弹出模态对话框。我已经编辑了上面的响应,您的问题可能是由于使用了错误的操作。当我这样做时,我得到了以下输出$('.modal').html(\n名称:\n Ruby\n\n\n\n开始时间:\n 2011-08-30 00:00:00 UTC\n\n\n\n\n结束时间:\n 2011-09-01 00:00:00 UTC\n\n\n培训师:\n Aaaa\n\n\n\n\n地点:\n Abc公司\n\n\n\n\n\n\n\n)$('.modal').dialog();没有加载模式对话框。它呈现部分的详细信息。但它显示在show.js.erbOK中。这听起来像是用HTML或纯文本而不是JS来评估您的响应。您使用的是什么版本的Rails?您是否偶然使用了
rails\u ujs
?你能给我看一下你的
show
控制器动作吗;具体地说,
响应
块?您还可以再次检查您的控制台/日志文件,您应该有类似的内容:
processingbyeventscoontroller#在调用时显示为JS
right;告诉我XX的
是什么。Iam使用的是rails 2.3.8版本。响应| to do | format | format.js end事件控制器处理时,日志文件中没有显示任何内容