我想在jQuery Datatables插件中搜索一些帶有特殊字符的單詞。jQuery的DataTables不工作的特殊字符導致搜索
有一些結果數據表是這樣的:
Peinado, Alma_María
Aguilar Castillo, Antonio José
當我嘗試搜索 「alma_maría」,第一個結果顯示:
Peinado, Alma_María
當我嘗試 「alma_maria」(注我使用字符「我」而不是「í」),沒有任何顯示。
截圖1:
截圖2:
有什麼辦法來配置數據表顯示特殊字符結果當我搜索無特殊字符?
我的HTML/Javascript代碼:
<table class="display table table-bordered table-striped" id="table-colegiados">
<thead>
<tr>
<th>{$TXT.nombre}</th>
<th>{$TXT.ciudad}</th>
<th>{$TXT.email}</th>
<th>{$TXT.telefono}</th>
<th>{$TXT.dni}</th>
<th>{$TXT.colegiado}</th>
<th>{$TXT.asesor}</th>
<th>{$TXT.editar}</th>
<th>{$TXT.borrar}</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
<script type="text/javascript">
$.fn.dataTableExt.oApi.fnGetFilteredNodes = function (oSettings)
{
var anRows = [];
for (var i=0, iLen=oSettings.aiDisplay.length ; i<iLen ; i++) {
var nRow = oSettings.aoData[ oSettings.aiDisplay[i] ].nTr;
anRows.push(nRow);
}
return anRows;
};
$.fn.dataTableExt.afnFiltering.push(function(oSettings, aData, iDataIndex) {
if (oSettings.nTable == document.getElementById('table-colegiados')){
var asesor = aData[6];
var checked = $('#checkbox_asesores').is(':checked');
if (checked) {
if (asesor == '1') {
return true;
}
} else {
return true;
}
return false;
} else {
return true;
}
});
var oTable = $('#table-colegiados').dataTable({
"aaSorting": [ [0,'asc'] ],
'iDisplayLength': 25,
"bProcessing": true,
"bServerSide": false,
"bDeferRender": true,
"sAjaxSource": "ajax/getColegiados.php",
"fnServerData": function (sSource, aoData, fnCallback) {
$.getJSON(sSource, aoData, function (json) {
fnCallback(json)
});
}
});
$('#checkbox_asesores').on("click", function(e) {
oTable.fnDraw();
});
</script>
ü[R使用哪個數據庫? –
你是什麼意思?數據是從JSON。 – joan16v
你可以試試這個http://www.datatables.net/plug-ins/filtering/type-based/accent-neutralise –