如何将ruby中的NULL打印到javascript中
How do you print out NULL from ruby to javascript?
如果在HAML中编写javascript,并在javascript中插入一个ruby数组,那么如何让ruby打印出NULL?
:javascript
$().ready(function() {
$(document).ready(function() {
$("table#hands-table").dataTable( {
"aoColumns" : #{@column_sort_types},
如果@column_sort_types包含空格或nil,则两者都不会打印出NULL。尝试将NULL添加到ruby数组会产生ruby错误。我必须执行javascript正则表达式吗?
尝试:
#{@column_sort_types.to_json}
to_json将在nil:上工作
nil.to_json
=> "null"
:javascript
$().ready(function() {
$(document).ready(function() {
$("table#hands-table").dataTable( {
"aoColumns" : #{@column_sort_types.present? ? @column_sort_types : "NULL"},
这使用与blank?
相反的Object#present?
。这些是ActiveSupport对Object
的添加。如果对象为空,或者为nil、false或仅包含空格的字符串之一,则对象为空。
如果我完全理解你的意思,你可以使用ruby的"开放类"能力:
class Array
def to_array_with_null
self.map do |val|
val = "NULL" if val.nil? or (val.respond_to? :empty? and val.empty?)
val
end
end
end
[1, '2', 3, nil, ''].to_array_with_null # => [1, "2", 3, "NULL", "NULL"]
在这种情况下,您可以使用#{@column_sort_types.to_array_with_null}
而不是#{@column_sort_types}
。如果我理解错了,请纠正我。
只需将nil传递给javascript,javascript就会将其视为名称为"nil"的变量,然后在javascript中定义变量var nil = null
。
%Q似乎是我丢失的元素。
%Q[null, null]
在RubyonRails中使用"NULL"将在javascript中打印"NULL"(带引号(。但是javascript需要没有引号的null。我还是想不通这个。
相关文章:
- 打印javascript控制台的堆栈跟踪
- php:打印javascript/jquery dom就绪
- 如何在html元素中打印javascript变量
- 在htm-php页面中打印Javascript函数
- 使用请求对象中可用的值打印 JavaScript 警报
- 如何使用PHP打印JavaScript
- 如何在我的视图中打印JavaScript代码
- 在自定义控制台中打印javascript错误
- 使用POS打印机打印Javascript收据
- 在移动设备(ios)上打印Javascript
- 如果会话中的属性不为 null 或默认值,则运行/打印 JavaScript Razor ASP.NET MVC
- 在 PHP 中打印 JavaScript 代码不起作用
- 在 php 中打印 javascript 的值
- 打印 Javascript 而不是 ASP(经典)输出
- 如何在 HTML 中打印 javascript 函数的返回值 “添加 {x} +{y}={result}”
- 在 PHP 中打印 JavaScript 代码
- WebClientPrint 用于 Chrome 上的客户端打印 javascript 问题
- 如何打印 JavaScript 非对象的所有函数
- PHP 字符串包含打印 Javascript 时的换行符问题
- 在 Javascript 中打印 Javascript