这是我使用Datatables jQuery插件将数据通过AJAX发送到服务器的代码:
$('#allLessonAttachmentsTable').DataTable({
processing: true,
serverSide: true,
"bSort": false,
"responsive": true,
ajax: {
url: 'http://lms.dev/admin/getFilesList',
data: function (d) {
d.id = '8',
d.type = 'App\Lesson'
}
},
columns: [
{data: 'checkbox', name: 'checkbox', "width": "20px"},
{data: 'picture', name: 'picture', 'className': 'text-center'}
]
});正如您所看到的,发送给服务器的type参数包含一个\ (反斜杠)字符。但是当我在Laravel后端反斜杠中取回它时,反斜杠字符就被删除了。
有什么问题,为什么要删除呢?
发布于 2016-05-09 09:02:17
JavaScript将\作为转义字符。您可能需要使用\\来转义它。将代码更改为:
d.type = 'App\\Lesson'在控制台本身中,您可以看到JavaScript如何对待\和\\。

如果整个过程是由PHP生成的,您可以尝试使用PHP的函数addslashes()来生成字符串友好的输出。
https://stackoverflow.com/questions/37111586
复制相似问题