Javascript 如何创建OnChange";总计;来自未知数量文本字段的函数
我很难理解如何在用Rails 3创建的表中的字段上执行简单的Javascript任务 “我的表”具有用户使用下面的表单添加的特征行(该表单更新数据库并重新加载表) 表中的列数基于以不同形式提交的属性数。无论一行中有多少列,它们后面都有一个合计列。表中的每个单元格都有一个文本字段输入,其ID基于行对象ID和列对象ID 我要做的是为每个单元格创建一个OnChange事件,这样当一个字段值改变时,Total列就会用该行中所有单元格的text_字段输入中的总值更新 我不知道如何将Rails对象传递给Javascript(这样我就可以循环使用ID),如果在控制器中使用动作,我不知道如何获取DOM元素名称和值,我也不知道如何使用RJS来实现这一点。有人能提供一些帮助吗?谢谢大家!Javascript 如何创建OnChange";总计;来自未知数量文本字段的函数,javascript,ruby-on-rails,rjs,Javascript,Ruby On Rails,Rjs,我很难理解如何在用Rails 3创建的表中的字段上执行简单的Javascript任务 “我的表”具有用户使用下面的表单添加的特征行(该表单更新数据库并重新加载表) 表中的列数基于以不同形式提交的属性数。无论一行中有多少列,它们后面都有一个合计列。表中的每个单元格都有一个文本字段输入,其ID基于行对象ID和列对象ID 我要做的是为每个单元格创建一个OnChange事件,这样当一个字段值改变时,Total列就会用该行中所有单元格的text_字段输入中的总值更新 我不知道如何将Rails对象传递给Ja
Sarah如果使用jQuery,可以在文本框上设置一个类,并监听其中的更改事件 例如:
<input type="text" id="WhateverXXX" class="MyValue" />
<script type="text/javascript">
$(function(e) {
$('.MyValue').change(function(e) {
// update the total
});
});
</script>
$(功能(e){
$('.MyValue').change(函数(e){
//更新总数
});
});
在jQuery中,可以很容易地用同一个类遍历所有元素,因此正确设计文档将有助于实现这一点
也许是这样的:
$('.thing_to_change').live('change', function() { retotal(); });
您的retotal功能可以类似:
var total = 0;
$('.thing_to_change').each(function() { total = total + $(this).val() });
可以从rails的“text\u field”助手调用这样的函数吗?例如::onchange=>“[code]”?我能这样给它输入一个变量吗?例如:$('.thing_to_change'+[variable from rails])?多亏了muchRails不推荐很多内置JavaScript方法,比如
link\u to\u函数
,而支持低调的JavaScript。jQuery使得使用一个简单的CSS选择器添加这种行为变得非常容易,如上所示。