Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Rails输入表单已使用jQuery.val()填充,但参数中不存在数据_Javascript_Jquery_Ruby On Rails - Fatal编程技术网

Javascript Rails输入表单已使用jQuery.val()填充,但参数中不存在数据

Javascript Rails输入表单已使用jQuery.val()填充,但参数中不存在数据,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我试图用javascript变量填充Rails表单中的字段 代码如下: 看法 控制器 def update @post = Post.find(params[:id]) ... end JavaScript var $save = $('.savebtn'); $save.on('click', function(e) { var someVar = "hey!"; $('#post_hello').val(someVar); }); 我可以立即看到文本区域是如何填充的

我试图用javascript变量填充Rails表单中的字段

代码如下:


看法

控制器

def update
  @post = Post.find(params[:id])
  ...
end
JavaScript

var $save = $('.savebtn');

$save.on('click', function(e) {
  var someVar = "hey!";
  $('#post_hello').val(someVar);
});

我可以立即看到文本区域是如何填充的。但是,数据“从不”到达params。我通过在控制器操作中引发一些内容来检查,如:

def update
  @post = Post.find(params[:id])
  raise '¯\_(ツ)_/¯'
  ...
end

后参数

{"hello"=>""}
但是,如果我手动输入相同的数据,它就可以正常工作

我错过了什么?有更好的方法吗?(撇开这还不起作用的事实不谈)


提前谢谢

尝试在表单的提交事件中填充值,而不是单击事件

$('form').submit(function(event){
  var someVar = "hey!";
  $('#post_hello').val(someVar);
})

为什么在单击表单提交按钮时要在JavaScript中添加输入值?请尝试在单击事件之前插入这些值,可能是onBeforeUnload。
$('form').submit(function(event){
  var someVar = "hey!";
  $('#post_hello').val(someVar);
})