いくつかのフィールドが動的に生成されるフォームがあります。
<table class="insideform">
<tr>
<td>
<script>
$(document).ready(function() {
$('#addrange').click(function(){
var value = '<tr><td><input type="number" size="10" id="from" name="from[]" value=""></td>';
value += '<td><input type="text" size="10" id="to" name="to[]" value=""></td>';
value += '<td><input type="text" id="disprice" name="disprice[]" /></td>';
value += '<td valign="middle" id="removerange">x</td>';
value += '<td id="to_err" class="err"></td></tr>';
$('.discounttable').append(value);
});
$('body').on("click","#removerange",function(){
$(this).parent().remove();
});
$('#maxqty').change(function(){
var value = $('#maxqty').val() + " Above";
$('#maxabove').text(value);
});
});
</script>
<table class="discounttable">
<tr>
<th>From</th>
<th>To</th>
<th>Price</th>
</tr>
<tr>
<td colspan="2" align="right"><span id="maxabove">10 Above</span></td>
<td><input type="text" name="maxaboveinput" id="maxaboveinput" /></td>
<td id="maxaboveinput_err" class="err"></td>
</tr>
<tr>
<td><input type="text" size="10" id="from" name="from[]" value=""></td>
<td><input type="text" size="10" id="to" name="to[]" value=""></td>
<td><input type="text" /></td>
<td valign="middle" id="removerange">x</td>
<td id="to_err" class="err"></td>
</tr>
</table> <input type="button" name="addrange" id="addrange" value="Add Row"/>
codeignitor のすべての to[]、from[] フィールドを検証したいので、ajax 呼び出しを使用してフォームを検証します。コードは次のとおりです。
$('#submit').click(function(){
console.log($("#form").serialize());
$.ajax({
url:'<?php echo base_url(); ?>index.php/placeorder/valids',
type:'POST',
data:$("#form").serialize()
}).done(function(data){
$("#validations").html(data);});
私はコントローラにこのコードを書き込もうとしました:
$this->load->helper(array('form', 'url'));
$this->load->library('form_validation');
$this->form_validation->set_message('%s required', '*required');
$this->form_validation->set_rules('to[]', 'To field', 'required|xss_clean');
$this->form_validation->set_rules('from[]', 'From field', 'required|xss_clean');
$errors = array();
if ($this->form_validation->run() == FALSE)
{
echo validation_errors();
}
それは私のフィールドを検証しません...そして、validation_errorsは、jsonに解析してjsonコードをエコーしようとしたことを何も示しません...「to」と「from」はjsonで空を示します。誰でも助けることができますか?