Rails 3:向javascript函数传递参数时出错
Rails 3: error while passing params to javascript function
我试图将值传递给JavaScript函数,但当我单击锚标记(加图标)时,它给了我以下Firebug错误。
我要做的是,点击"加号",我从部分添加字段到表。我哪里做错了?
当前在<th>
中有一个带'+'的表。我想把数据(从部分)附加到表中。
SyntaxError: syntax error
[Break On This Error]
add_fields(this, contact, "<tr class=''fields''>'n<td>...
Helper文件
module TestHelper
def add_fields(name, obj)
if (obj == 'contact')
fields = render :partial => '/test/add_fields', :locals => {:map_values => ["Name", "URL", "Address"]}
link_to_function(name, h("add_fields(this, #{obj}, '"#{escape_javascript(fields)}'")"))
elsif (obj=='company')
fields = render :partial => '/test/add_fields', :locals => {:map_values => ["CName", "CURL", "CAddress"]}
link_to_function(name, h("add_fields(this, #{obj}, '"#{escape_javascript(fields)}'")"))
elsif (obj=='lead')
fields = render :partial => '/test/add_fields', :locals => {:map_values => ["LName", "LURL", "LAddress"]}
link_to_function(name, h("add_fields(this, '"#{obj}'", '"#{escape_javascript(fields)}'")"))
end
end
end
视图文件
=add_fields 'Add', 'contact'
部分_add_fields.html.haml %tr.fields
%td
%select{:class => 'select-two'}
- map_values.each do |e|
%option #{e}
js文件
add_fields = function(obj, maptype, content){
//console.log(obj.closest('.table'));
var parent = $(obj).closest('.table');
var msg_obj = $('.alert.alert-info',parent);
if(msg_obj.length > 0) {
msg_obj.closest('tr').addClass('hidden');
}
$('tbody',parent).append(content);
$("select.select-two").select2({allowClear: true});
};
改变下面一行
link_to_function(name, h("add_fields(this, '"#{obj}'", '"#{escape_javascript(fields)}'")"))
link_to_function("name", "add_fields(this, '#{obj}', '#{j(fields)}'
)".html_safe)
h()函数在rails 3中已经过时
使用raw "string"
或"string".html_safe
相关文章:
- 使用PHP和Javascript在函数内部传递alphaneumeric值作为参数时出错
- 从 javascript 获取 MVC 控制器中的操作参数时出错
- Node.js错误:参数太多上传批量数据时出错
- angularjs[ng:areq]参数'fn'不是函数,在控制台中获取字符串时出错
- WebSQL:处理SQL时出错:数量为''语句字符串中的s与参数计数不匹配
- ReactJS - 将参数传递给函数时出错
- JQuery 函数突然停止工作,转换 Javascript 参数时出错
- 资产期间出错:由于Javascript函数的默认参数而导致预编译
- 从codeehind传递javascript参数时出错
- 通过POST将参数传递到iframe中的SSRS时出错
- 将一系列数字作为参数传递给PHP中的JavaScript函数时出错
- 使用缓冲区解码base64时出错.第一个参数必须是一个数字
- toString()在使用传递参数时出错
- 提供svg v1路径参数d时出错
- JavaScript函数作为参数出错- SyntaxError:意外的token{
- 动态传递参数给javascript函数时出错
- Rails 3:向javascript函数传递参数时出错
- 对象没有方法'在node.js中使用参数时出错
- Javascript在将参数作为字符串和数字的组合传递时出错
- Angular 2在访问路由器参数时会出错