我正在使用codeigniter框架我正在尝试使用HTML格式的文本框当用户单击按钮时文本框将由jquery自动生成但是当我提交表单时其他文本框值正确发布但我无法发布jquery文本框值。
这是jquery代码:
$("#button").live('click',function add(){
$("#tblRel").append(
'<tr ><td>'
+'<input type="text" class="input_value_short" id="prova" name="jquery_txt" value="prova" />'+
'</td><tr>'
);
});
HTML:
<?php echo form_open("validation/form_main");?>
<table id="tblRel" border="0">
<tr>
<td class="lable">Applicant Name:</td>
<td colspan="3"><?php echo form_input(array('name'=>'applicant_name','class'=>'input_value_long','value'=>set_value('applicant_name'))) ?></td>
</tr>
</table>
<?php echo form_submit(array('id'=>'submit','name'=>'Save','value'=>'Save record','class'=>'button_print'));?>
我在发布的form_main()函数中的:
form_main(){
$name = $this->input->post('applicant_name');
$jquery_txt = $this->input->post('jquery_txt');
}
我可以获得$ name的值,但$ jquery_txt为空 有人可以帮我吗!抱歉形成了我可怜的英语。
答案 0 :(得分:1)
$("#button").live('click',function add(){
$("#tblRel").append('<tr ><td><input type="text" class="input_value_short" id="jquery_txt" name="jquery_txt[]" value="prova" /></td><tr>');
});
我猜你的名字和文本框的名称是不同的。如果你有多个文本框,请将文本框的名称更改为数组,否则在发布后只会获得一个值。
答案 1 :(得分:0)
将jQuery代码更改为此,它应该可以正常工作。您的问题是您使用&#34;提交&#34;添加了内容。按钮的单击,将提交表单,并在提交请求后附加内容。
<script>
$("form").live('submit',function add(){
$("#tblRel").append(
'<tr ><td>'
+'<input type="text" class="input_value_short" id="prova" name="jquery_txt" value="prova" />'+
'</td><tr>'
);
return true;
});
</script>