javascript – 如何将表单中的Json发布到控制器然后保存到数据库
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 如何将表单中的Json发布到控制器然后保存到数据库,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1827字,纯文字阅读大概需要3分钟。
内容图文
![javascript – 如何将表单中的Json发布到控制器然后保存到数据库](/upload/InfoBanner/zyjiaocheng/907/f366d4feaae14002a3bf8a929a86f549.jpg)
我有一个带有样本表值的表单,我的表(id = sampleTbl)hv 2列名和年龄.我想点击submitButton(id = idOfButton)时将它保存到我的数据库表人(id = AI,名称,年龄)
在我的代码下面,这是我的Javascript代码:
<?php
$script = <<< JS
$('#idOfButton').click(function(){
var myTableArray = [];
$("table#sampleTbl tr").each(function () {
var arrayOfThisRow = [];
var tableData = $(this).find('td');
if (tableData.length > 0) {
tableData.each(function () {
arrayOfThisRow.push($(this).text());
});
myTableArray.push(arrayOfThisRow);
}
});
var jsonEncode = JSON.stringify(myTableArray);
// alert(jsonEncode);
$.ajax({
type: "POST",
data: "pTableData=" + jsonEncode,
success: function(msg){
// alert(msg);
},
});
});
JS;
$this->registerJs($script);
?>
这是我的actionCreate控制器:
public function actionCreate()
{
$model = new Person();
if(isset($_POST['pTableData'])) {
$tableData = stripcslashes($_POST['pTableData']);
$tableData = json_decode($tableData, true);
$model->name = $tableData[0]['name'];
$model->age = $tableData[0]['age'];
$model->save();
return $this->redirect(['index']);
} else {
return $this->render('create', [
'model' => $model,
]);
}
}
我的表格表格:
<?php $form = ActiveForm::begin(); ?>
<table id="sampleTbl", class="table table-striped table-bordered">
<thead>
<tr id="myRow">
<th>Name</th>
<th>Age</th>
</tr>
</thead>
<tbody>
<tr>
<td>william</td>
<td>32</td>
</tr>
<tr>
<td>Muli</td>
<td>25</td>
</tr>
<tr>
<td>Sukoco</td>
<td>29</td>
</tr>
</tbody>
</table>
<div class="form-group">
<?= Html::submitButton('Create',['class' => 'btn btn-success', 'id' => 'idOfButton']) ?>
</div>
<?php ActiveForm::end(); ?>
我不知道如何保存所有值数组.当我使用像$tableData [0] [‘name’];它只保存第一行.如何保存所有价值?
解决方法:
使用lopping foreach来保存数组:
foreach ($tableData as $key) {
$model->isNewRecord = true;
$model->id = NULL;
$model->name = $key['name'];
$model->age = $key['age'];
$model->save();
}
内容总结
以上是互联网集市为您收集整理的javascript – 如何将表单中的Json发布到控制器然后保存到数据库全部内容,希望文章能够帮你解决javascript – 如何将表单中的Json发布到控制器然后保存到数据库所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。