在添加到数据库之前,使用javascript编辑表单输入

在添加到数据库之前,使用javascript编辑表单输入,javascript,jquery,ruby-on-rails,ruby-on-rails-4,Javascript,Jquery,Ruby On Rails,Ruby On Rails 4,我有一个基本的rails表单,如下所示: <%= form_for @song do |f| %> <p> <%= f.label :url %><br> <%= f.text_field :url %> </p> <p> <%= f.submit %> </p> <% end %> 还有其他领域,但只有这一个是相关的

我有一个基本的rails表单,如下所示:

<%= form_for @song do |f| %>

  <p>
    <%= f.label :url %><br>
    <%= f.text_field :url %>
  </p>

  <p>
    <%= f.submit %>
  </p>
<% end %>




还有其他领域,但只有这一个是相关的。我希望能够输入youtube链接,但我希望嵌入链接存储在数据库中。我有一个javascript函数,可以将常规链接转换为嵌入链接,那么在提交之前如何在输入上运行此函数?

您只需在表单上注册提交事件的处理程序:

$('form#new_song').on('submit', function() {
  field = $(this).find('input#url');

  field.val(conversion_function(field.val()));
});

出于好奇,为什么需要用JavaScript来完成呢?它不能确保存储在数据库中的URL是嵌入URL,它不一定是javascript。我只想能够输入常规的youtube链接和存储嵌入链接。除非youtube大幅改变他们的URL格式,否则我认为转换将始终有效。我建议您在服务器端进行转换。您可以使用ActiveRecord回调来确保转换发生。用户可能没有启用JavaScript,在这种情况下不会发生转换。哦,这是一个很好的观点。我没有太多的网络开发经验,所以这对我来说太过分了。谢谢