ユーザーから情報を収集するフォームがあります。フォームは10個の入力テキストフィールドで構成されています。var first_name = $("#fname").val()
入力テキストフィールドの個々の値は、例として経由でアクセスされ、var postdata = {'fname':first_name};
渡されて ajax に渡されurl: "<?php echo base_url(); ?>main_controller/save_data", data: postdata
、コントローラー関数が再びそれを収集します。30 個の入力テキスト フィールドがあり、この方法で使用すると、かなりの時間がかかります。ミニチュアの方法でjavascriptを使用して多数の入力フィールド値を渡す最良の方法は何ですか? これにはショートカットがありますか?どうもありがとう。以下にサンプルコードがあります。
ビュー:
<input class="input input-large" type="text" name="fname" id="fname" value=""/>
<input class="input input-large" type="text" name="lname" id="lname" value=""/>
<input class="input input-large" type="text" name="address" id="address" value=""/>
<input class="input input-large" type="text" name="age" id="age" value=""/>
<input class="input input-large" type="text" name="height" id="height" value=""/>
<input class="input input-large" type="text" name="gender" id="gender" value=""/>
<input class="input input-large" type="text" name="school" id="school" value=""/>
<input class="input input-large" type="text" name="course" id="course" value=""/>
<input class="input input-large" type="text" name="year" id="year" value=""/>
<input class="input input-large" type="text" name="date_of_birth" id="date_of_birth"
value=""/>
<button class="btn btn-success" id="save" name="save">Save</button>
<script type="text/javascript">
$("#save").click(function(){
var fname = $("#fname").val();
var lname = $("#lname").val();
var address = $("#address").val();
var age = $("#age").val();
var height = $("#height").val();
var gender = $("#gender").val();
var school = $("#school").val();
var course = $("#course").val();
var year = $("#year").val();
var date_of_birth = $("#date_of_birth").val();
var postdata = {
'fname': fname,
'lname': lname,
'address': address,
'age': age,
'height': height,
'gender': gender,
'school': school,
'course': course,
'year': year,
'date_of_birth': date_of_birth
};
$.ajax({
type: "POST",
url: "<?php echo base_url(); ?>main_controller/save_data",
data: postdata,
success: function (data) {
if (data.notify) {
alert('success');
} else {
alert('Failed');
}
}
});
});
</script>
コントローラ:
function save_data(){
$fname = $this->input->post('fname');
$lname = $this->input->post('lname');
$address = $this->input->post('address');
$age = $this->input->post('age');
$height = $this->input->post('height');
$gender = $this->input->post('gender');
$school = $this->input->post('school');
$course = $this->input->post('course');
$year = $this->input->post('year');
$date_of_birth = $this->input->post('date_of_birth');
$this->insert_model->save_data($fname,$lname,$address,$age,$height,$gender,$school,$course,$year,$date_of_birth);
}