我的问题是我正在使用HTML
创建动态javascript
表。
如何使用CodeIginter将此动态HTML
表保存到数据库中?
这是我输入的文本代码:
<table id="tb3" name="tb3">
<tr>
<td>Product Code</td>
<td>Product Name</td>
<td>Qty</td>
<td>Rate</td>
<td>Amount</td>
</tr>
<tr>
<td>
<input type="text" onkeyup="autofill()" id="Product_Code" name="Prdtcode" class="form-control input-xs Product_Code " required>
</td>
<td ><input type="text" id="Product_Name" name="Prdtname" class="form-control input-xs"></td>
<td><input type="text"
onkeypress="javascript:doit_onkeypress(event)" id="Qty" onkeyup="movetoNext(this, 'addMore3')" name="Qty"class="form-control input-xs" required>
</td>
<td><input type="text" id="Rate" class="form-control input-xs"name="Rate" value="" ></td>
<td><input type="text" id="Value" name="Value" class="form-control input-xs" ></td>
</tr>
</table>
此代码从TextBox
获取数据,并使用javascript
以表格格式显示:
<table class="table table-bordered table-striped table-xxs" id="tb2" name="tb2">
<tr>
<th>Product Code</th>
<th>Product Name</th>
<th>Qty</th>
<th>Rate</th>
<th>Amount</th>
</tr>
这是创建表的javascript
代码
function doit_onkeypress(event)
{
if (event.keyCode == 13 || event.which == 13){
if(!checkEmptyInput()){
var newRow = table.insertRow(table.length),
cell1 = newRow.insertCell(0),
cell2 = newRow.insertCell(1),
cell3 = newRow.insertCell(2),
cell4 = newRow.insertCell(3),
cell5 = newRow.insertCell(4),
code = document.getElementById("Product_Code").value,
name = document.getElementById("Product_Name").value,
qty = document.getElementById("Qty").value,
rate = document.getElementById("Rate").value,
amt = document.getElementById("Value").value;
cell1.innerHTML = code;
cell2.innerHTML = name;
cell3.innerHTML = qty;
cell4.innerHTML = rate;
cell5.innerHTML = amt;
var prdtcode = $("#Product_Code").val("");
var Prdtname = $("#Product_Name").val("");
var qty = $("#Qty").val("");
var Rate = $("#Rate").val("");
var amt = $("#Value").val("");
}
}
}
我的问题是我正在使用HTML
创建一个动态javascript
表,如何使用codeiginter将这个动态html表保存到数据库中。
答案 0 :(得分:0)
将整个表格的html数据存储到一个变量中
var table_data = $("#table_id").html();
$.trim(table_data. replace(/>[\n\t ]+</g, "><"));
现在将这个table_data变量发送到控制器函数以添加数据 确保您字段的数据类型为文本或长文本,然后通常在控制器功能中执行insertdata查询。
ajax代码如下:
$.ajax({
url:"path to your controller function",
type: 'POST',
data:{
table_data:table_data,
},
success:function(result){
console.log(result);
},
});
控制器的功能代码如下:
function insert_table_data(){
$data = array('table_data' => $this->input->post('table_data'));
$this->db->insert('table_name', $data);
}