Reputation: 2276
I've a dynamic table which adds more rows. Here is my table.
<table>
<thead>
<tr class="success">
<th>Bank/Lender</th>
<th>Add More</th>
</tr>
</thead>
<tbody >
<tr>
<td>
<?php
$data = array(
'name' => 'debt_info_bank_name[]',
'id' => '',
'class' => 'form-control',
'placeholder' => 'Bank/Lender Name'
);
echo form_input($data);
?>
</td>
<td>
<input class="add btn btn-success btn-sm" type="button" value="Add More" />
</td>
</tr>
</tbody>
And Here is my javascript part:
$(document).on('click','.add',function(){
$(this).val('Delete');
$(this).attr('class','del btn btn-danger btn-sm');
var appendTxt = '<tr><td><?php $data = array(
'name' => 'debt_info_bank_name[]',
'id' => '',
'class' => 'form-control',
'placeholder' => 'Bank / Lender Name'
);
echo json_encode(form_input($data)); ?></td><td><input class="add btn btn-success btn-sm" type="button" value="Add More" /></td></tr>';
$("#dyn_table > tbody > tr:last").after(appendTxt);
});
$(document).on('click','.del',function(){
$(this).parent().parent().remove();
});
It adds rows but with quotes"" in each td element. How can i correct it?
Note: If i add fields in javascript code using html elements like
var appendTxt = '<tr><td><input type="text" placeholder="Bank/Lender Name" /></td> <td><input class="add btn btn-success btn-sm" type="button" value="Add More" /></td></tr>';
then it goes fine but i want to add fields in codeigniter style
because it is more safe to do that.
Upvotes: 1
Views: 574
Reputation: 87
remove json_encode from here. just echo
echo form_input($data); ?></td><td><input class="add btn btn-success btn-sm" type="button" value="Add More" /></td></tr>';
Upvotes: 1