2010-04-14 45 views
0

我有一个由日历视图(http://code.google.com/p/calendardateselect/)和div组成的页面,其中每个页面都包含有关某个人的信息。在每个div中,我想链接到新的控制器和操作,并将个人ID和日历中选定的日期传递给它。处理来自javascript或rails的动态数据

我能想到的一种方式,但我想有可能是一个更好的解决方案:

1)做这样的事情:

=link_to_function "Week", "weekClicked(#{person.id})" 

然后在weekClicked()JavaScript方法我得到从日历中选择日期,如:

$('e_date').selected_date; 

然后用JavaScript我可以做一个POST请求这里提到:JavaScript post request like a form submit

2)或者,有没有办法让每个链接都有一个自己的形式的按钮,并且可能有一个隐藏的字段,可以在提交表单之前或之后从日历中获取所选日期?我也试过,但无法弄清楚。这绝对看起来好像比正确的轨道#1。

谢谢。

回答

0

嗯,

是否可以只使用JS序列化要发送的PARAMS。在一个隐藏字段存储Person.id现在var person_id = '<%= person.id %>'

为您的按钮/链接你可以调用的功能,如weekClicked(person_id);

其中

weekClicked = function(person_id) { 
    var data = $('#calendar').serialize() + '&' + $('other_var').serialize; 
    doAjaxCall(data); 
} 

你可以链上的所有网页中的必要投入到上面的数据变量。我假设JQuery,但在其他库中会有类似的选项。