レール 3.1。私は次のものを持っています:
// _form.html.erb
<%= form_for ([@country, @state], :remote => true) do |td| %>
<div id= "state_errors" style="display:none"></div>
<%= td.text_field :position, :id => "next_state" %>
<div class="actions">
<%= td.submit %>
</div>
<% end %>
// global.js
function nextState() {
Array.max = function( array ) {
return Math.max.apply( Math, array );
};
var getLastState = $("input.sortable_state_item_position").map(function() {
return $(this).val();
}).get();
getLastState.push("0");
return Array.max(getLastState) + 1;
}
$("input#next_state").val(nextState());
// states_controller.rb
class StatesController < ApplicationController
before_filter :load
def load
@country = Country.find(params[:country_id])
@states = State.all
end
def create
@state = @country.states.build(params[:state])
@state.save
end
...
end
form
送信ボタンがクリックされたときにユーザーがレコードを作成するためのタグを作成したことに気付くでしょう。しかし、ユーザーが何も入力する必要がないため、フォーム全体が冗長であるため、全体を削除してform_for
通常の方法を使用するa
かbutton
、トリガーすることができるかどうかはわかりません。create
私のJavaScriptは値を自動的に入力します。
お知らせ下さい。どうもありがとう。