gpt4 book ai didi

javascript - 如何将html表格数据存入数组?

转载 作者:行者123 更新时间:2023-11-28 03:51:43 26 4
gpt4 key购买 nike

我正在使用 PHP Codeigniter。我对 JavaScript 不太了解。我的问题是,我有一个包含可编辑列的表,当我单击提交按钮时,我想使用 POST 方法将表数据发送到 Codeigniter 函数。

HTML 代码

<div class="col-md-12 top-20 padding-0">
<div class="col-md-12">
<div class="panel">
<div class="panel-heading"><h3>Data Tables</h3></div>
<div class="panel-body">
<div class="responsive-table">
<table id="data_table" class="table table-striped table-bordered" width="100%" cellspacing="0">
<tr>
<th>Name</th>
<th>Country</th>
<th>Age</th>
<th>Action</th>
</tr>
<tr>
<td><input type="text" id="new_name"></td>
<td><input type="text" id="new_country"></td>
<td><input type="text" id="new_age"></td>
<td><input type="button" class="add" onclick="add_row();" value="Add Row"></td>
</tr>

</table>
<input type="button" name="check" onclick="clik();">
</div>
</div>
</div>
</div>
</div>

用于可编辑表格的 JavaScript

function edit_row(no)
{
document.getElementById("edit_button"+no).style.display="none";
document.getElementById("save_button"+no).style.display="block";

var name=document.getElementById("name_row"+no);
var country=document.getElementById("country_row"+no);
var age=document.getElementById("age_row"+no);

var name_data=name.innerHTML;
var country_data=country.innerHTML;
var age_data=age.innerHTML;

name.innerHTML="<input type='text' id='name_text"+no+"' value='"+name_data+"'>";
country.innerHTML="<input type='text' id='country_text"+no+"' value='"+country_data+"'>";
age.innerHTML="<input type='text' id='age_text"+no+"' value='"+age_data+"'>";
}

function save_row(no)
{
var name_val=document.getElementById("name_text"+no).value;
var country_val=document.getElementById("country_text"+no).value;
var age_val=document.getElementById("age_text"+no).value;

document.getElementById("name_row"+no).innerHTML=name_val;
document.getElementById("country_row"+no).innerHTML=country_val;
document.getElementById("age_row"+no).innerHTML=age_val;

document.getElementById("edit_button"+no).style.display="block";
document.getElementById("save_button"+no).style.display="none";
}

function delete_row(no)
{
document.getElementById("row"+no+"").outerHTML="";
}

function add_row()
{
var new_name=document.getElementById("new_name").value;
var new_country=document.getElementById("new_country").value;
var new_age=document.getElementById("new_age").value;

var table=document.getElementById("data_table");
var table_len=(table.rows.length)-1;
var row = table.insertRow(table_len).outerHTML="<tr id='row"+table_len+"'><td id='name_row"+table_len+"'>"+new_name+"</td><td id='country_row"+table_len+"'>"+new_country+"</td><td id='age_row"+table_len+"'>"+new_age+"</td><td><input type='button' id='edit_button"+table_len+"' value='Edit' class='edit' onclick='edit_row("+table_len+")'> <input type='button' id='save_button"+table_len+"' value='Save' class='save' onclick='save_row("+table_len+")'> <input type='button' value='Delete' class='delete' onclick='delete_row("+table_len+")'></td></tr>";

document.getElementById("new_name").value="";
document.getElementById("new_country").value="";
document.getElementById("new_age").value="";
}

因此,在给定的可编辑表数据中,我想推送到我的 codeigniter 函数。

最佳答案

现在最好的方法是使用 Ajax 将这些 javascript 值发布到 Codeigniter 函数

简单的 ajax 调用示例:

var newName = '约翰·史密斯';

$.ajax('myservice/codigniter_Function?' + $.param({id: 'some-unique-id'}), {
method: 'POST',
data: {
name: newName
}
})
.then(
function success(name) {
if (name !== newName) {
alert('Something went wrong. Name is now ' + name);
}
},

function fail(data, status) {
alert('Request failed. Returned status of ' + status);
}
);

请检查source有关如何将 ajax 与 javascript 结合使用的详细信息。

关于javascript - 如何将html表格数据存入数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47944579/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com