我有这个AJAX脚本,它将数据从DataTable传递到PHP页面,然后输出到模式。如果数据只是一个整体,例如 FINANCE / STOCK , DISBURSEMENT 等,它就可以传递数据,但是如果数据是 FINANCE 1 , 金融2 ,等等。它显示null
。
此行来自我的数据表
{
"targets": 6,"data": "approvedby","render": function(data,type,row,meta) {
var table = ' <button class="btn btn-default btn-sm preview btn-flat" data-id=' + row['department'] + ':' + row['jobposition'] + '><i class="fa fa-eye"></i> Preview</button>';
table += ((data == null) ? ' <button class="btn btn-success btn-sm edit btn-flat" data-id=' + row['department'] + ':' + row['jobposition'] + '><i class="fa fa-check-square-o"></i> Edit</button>' : '');
table += ((data == null) ? ' <button class="btn btn-warning btn-sm approve btn-flat" data-id=' + row['department'] + ':' + row['jobposition'] + '><i class="fa fa-check-square-o"></i> Approve</button>' : '');
return table += ((data == null) ? ' <button class="btn btn-danger btn-sm delete btn-flat" data-id=' + row['department'] + ':' + row['jobposition'] + '><i class="fa fa-check-square-o"></i> Delete</button>' : '');
}
}
我试图输出代码,以便查看它是否确实接受数据,并且确实可以。
var table = ' <button class="btn btn-default btn-sm preview btn-flat" data-id=' + row['department'] + ':' + row['jobposition'] + '><i class="fa fa-eye"></i> ' + row['department'] + ':' + row['jobposition'] + ' Preview</button>';
此图片来自我的数据表。如您所见,我可以清楚地验证dataTable是否正确接受了数据。
现在,问题是,当我通过AJAX传递此数据时,它不接受数据,因为它有空格。
<script>
$("body").on('click','.preview',function (e){ // standard view
e.preventDefault();
var id = $(this).data('id');
$.ajax({
type: 'POST',url: 'human_resource_jobpositionentry_masterfile_data_row.php',data: {referenceno:id}
}).done(function(d){
console.log('d: '+d);
$('#jobpositionentry_masterfile_modal_loader').html(d);
$('#jobpositionentry_masterfile_modal_loader').show();
});
});
</script>
它显示null
,这是我的模态。
这是模态显示的一部分。
<div class='form-group'>
<label for='add_idno' class='col-sm-3 control-label'>Series No.</label>
<div class='col-sm-9'>
<div id="jobpositionentry_masterfile_modal_loader">
</div>
</div>
</div>
此数据正在此处爆炸。
<?php
include 'backend/conn.php';
//include 'backend/session.php';
if(isset($_POST['referenceno'])){
$id = $_POST['referenceno'];
$forexplode=explode(':',$id);
echo $departmentexplode = $forexplode[0];
echo $jobpositionexplode = $forexplode[1];
$sql = "SELECT * FROM hrdjobpositionentry WHERE department LIKE '%$departmentexplode%' AND jobposition LIKE '%$jobpositionexplode%'";
$query = sqlsrv_query($conn,$sql,array(),array("Scrollable" => SQLSRV_CURSOR_KEYSET));
$row = sqlsrv_fetch_array($query,SQLSRV_FETCH_ASSOC);
echo json_encode($row);
}
?>
请问为什么AJAX不传递带有空格的数据的原因?