在要求用户提供帐户详细信息之前,我需要允许用户输入评论并提交。提供这些详细信息后,它们将用于创建新用户,并且他们写的评论也将提交并属于该新用户。目前,我根本不知道如何在两个表单上触发提交操作,将所有信息传递给服务器以执行这些任务。
基本上我想要的:
- 用户写评论,提交
- 提交按钮显示联系信息表单
- 用户填写,提交
- 两种形式的数据均已提交
我有的:
_feedback.html.erb
<%= simple_form_for [@post, Comment.new] do |f| %>
<%= f.input :body, :label => false, :input_html => { :maxlength => '500', :rows => '4', :placeholder => '...'} %>
<% if current_user.guest != true %>
<%= f.button :submit, "Submit" %>
<% end %>
<% end %>
<% if current_user.guest == true %>
<input type="submit" value="Submit" onclick="contactDisplay()"></input>
<% end %>
显示.html.erb
<% if current_user.guest == true %>
<div id="contact" class="post-contact">
<%= simple_form_for(@user, :html => { :multipart => true }, defaults: { label: false, required: true }) do |f| %>
<%= f.input :name, :input_html => { :placeholder => 'Your Name', :id => 'name'} %>
<%= f.input :email, :input_html => { :placeholder => 'Your Email', :id => 'email'} %>
<% end %>
<input type="submit" value="Submit" onclick="submitContact()"></input>
</div>
<% end %>
<%= render 'posts/show/feedback' %>
帖子.js
function contactDisplay(){
var contact = document.getElementById('contact');
contact.style.display='block';
}
function submitContact(){
document.getElementById("new_comment").submit();
document.getElementById("new_user").submit();
}