【发布时间】:2016-08-30 05:10:03
【问题描述】:
我有一堆看起来像这样的 html - 这里只显示一个,因为它是所有需要的:
<tr>
<td>Name of Organisation:</td>
<td class="edtext" id="organisation"><?=$aRes[0]['organisation']?></td>
</tr>
在页面的头部我有这个:
$(function() {
$(".edtext").editable("./editHandler/WRITE.update.php?uaID=<?=$uaID?>", {
event : 'dblclick',
dataType : "json",
placeholder : '',
indicator : 'Saving...',
cssclass : 'editable',
submit : 'Save',
cancel : 'Cancel',
});
});
我可以通过双击然后编辑我给 id="organisation" 的 td 字段成功地将内容发送到数据库中,很好。
在处理这个问题的 php 后端位中,直接在工作正常的 DB 函数之后,我有:
header('Content-type: application/json');
(截取数据库更新代码 - 它工作正常)
$report = array();
$report['organisation'] = $userInput;
$report['result'] = "✔";
echo json_encode($report);
同一个 php 的标头设置为:
因此,一旦将已键入并保存到可编辑表格单元格中的文本输入到数据库中,上面的内容就会发送回前端(“Hello World”是输入的示例文本):
{"organisation":"Hello World","result":"✔"}
那么在编辑发生的 td 单元格中显示的是这样的:
{"organisation":"Hello World","result":"✔"}
这不是我们想要的。勾号是&#10004; 应该是什么,但我的意思是我希望显示“Hello World”部分(当然不带引号)并将结果显示在 id=" 的 span 或 div 中结果”,在页面的其他地方。
我读到我需要使用 jEditable callback 选项,但是我找不到任何如何执行此操作的示例。我对 JS 不是很有信心,希望有人能把我推向正确的方向。欢迎使用功能示例。
顺便说一句,我需要能够将这段 JS 用于多个文本字段,并且不需要为每个需要编辑权限的数据单元格设置单独的 JS 条目。
【问题讨论】:
标签: javascript json jeditable