将php echo $ row数据显示为bootstrap模式forms
我目前有以下数据表来显示我的数据库联系人列表。 每一行,我还插入了一个“编辑”和“删除”按钮,并为点击按钮时jQuery提供了data-id = ""
。 当单击按钮时,通过ajax,我将从getcontact.php获取数据并将其设置为模式forms的相应输入,但数据似乎不显示在表单值中。 我可以知道哪里出错了吗?
tables.php
ID Name Company Position Phone Email Gender Date Registered Edit Delete <button id="editButton" type="button" class="btn btn-primary" datatoggle="modal" data-target="#editModal" data-id=""> Edit <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#deleteModal" data-id=""> Delete
模态(与tables.php在同一页面)
jQuery的
$("#editButton").click(function(e){ e.preventDefault(); var uid = $(this).data('id'); // get id of clicked row $.ajax({ url: 'getcontact.php', type: 'POST', data: 'id='+uid, dataType: 'json', success: function(response){ $("#nameInput").val(result[0]); $("#companyInput").val(result[1]); $("#posInput").val(result[2]); $("#contactInput").val(result[3]); $("#emailInput").val(result[4]); $("#genderInput").val(result[5]); } }); });
getcontact.php
1 – 您正在从您的php文件发送编码的json并直接从您的javascript代码中使用它,这是无效的,可以这么说,
2 – 您使用ajax错误地将数据对象发送到php,它应该如下而不是data: {id: uid},
3 – 你声明了错误的data-id,它应该如下: var uid = $(this).attr('data-id');
你需要decode
你的json响应如下:
var uid = $(this).attr('data-id'); $.ajax({ url: 'getcontact.php', method: 'POST', data: {id: uid}, success: function(response){ var result = JSON && JSON.parse(response) || $.parseJSON(response); ... // rest of your code ...
更新
你在这部分有一个问题:
while($row = mysqli_fetch_array($result)){ $rows[] = $row['*']; }
要添加整个数组,您需要执行以下操作:
while($row = mysqli_fetch_array($result)){ $rows[] = $row; }
Interesting Posts
403禁止从ajax请求访问CodeIgniter控制器
编程选择select2,它通过Ajax检索其数据
即使我可以看到JSON有效负载返回,jQuery ajax调用跨域返回状态404
Excel结果没有给我任何东西,但运行正常
是否可以使用javascript更改http请求的标头?
用AJAX删除项目后没有触发.ajaxComplete?
jQuery自动完成,当我提出一个新的时,我可以让之前的ajax调用停止吗?
Rails 3:如何从js.erb文件中调用javascript函数
如何使用PHP的jQuery / AJAX调用迭代JSON数组?
使用jQuery / Ajax提交表单只能每隔一段时间运行一次