我正在尝试在 Rails 3 应用程序中实现就地编辑,该应用程序采用编辑后的值并根据该值修改计算。例如:
编辑“捐赠积分”字段之前:
您还有 10 个积分。捐赠积分:0。编辑“捐赠积分”字段后:
您还有 5 个积分。捐赠积分:5。
我研究了各种选项,看起来 jquery-in-place-editor 可以满足我的需求。以供参考:
演示有效。但是我想我需要做的是使用回调函数来调用一个ruby脚本,这样我就可以做更多的处理。我不完全确定这是否是我需要做的,所以我正在寻找一些指导。
这是我认为相关的 jQuery javascript(来自示例应用程序中的/public/javascripts/application.js ):
// Using a callback function to update 2 divs
$("#editme4").editInPlace({
callback: function(original_element, html, original){
$("#updateDiv1").html("The original html was: " + original);
$("#updateDiv2").html("The updated text is: " + html);
return(html);
}
});
看起来我需要做的就是拿它们玩一会儿original
,html
然后将它们反馈给适当的 div。问题是,我该怎么做?我在想两种可能:
A. jquery-in-place-editor 中有一个工具可以调用 url。我可以用它来调用 ruby 脚本并得到结果吗?我将如何在 Rails 中执行此操作?这是调用 url 的代码(同样来自/public/javascripts/application.js
);但它调用了一个php脚本。
$("#editme1").editInPlace({
// callback: function(unused, enteredText) { return enteredText; },
url: 'server.php',
show_buttons: true
});
B、直接在javascript中修改更新后的文本,并传递给相应的div。我更喜欢使用 ruby 脚本,但也许这会更容易。