jquery - 使用 Jquery 更改可排序表上的升序和降序状态的 aria-label

标签 jquery sorting datatables wai-aria

您好,我正在尝试更改可排序列上的咏叹调标签。我正在使用 Jquery。我可以更改标签,但我不知道如何更改它,以便标签根据升序或降序而变化。截至目前,它会更改标签,但是当您单击箭头时,它会默认返回来自数据表 jquery 的原始标签。

    $(document).ready(function(){

var x = $("div.masthead a:first").attr('href');
var lang = x.slice(-2);

if (lang==='fr'){
var sSearchfr = "filtre";
var sInfoEmptyfr = "Résultats 0 à 0 sur 0";
var sInfofr = "Résultats _START_ à _END_ sur _TOTAL_";
var sZeroRecordsfr = "Aucun résultat pour cette recherche. Il se peut que le nom recherché soit mal orthographié ou que le député en question n’ait présenté aucune demande de remboursement depuis deux ans";
var sInfoFilteredfr = "filtrés sur  _MAX_";
var sortdn = ": Trier les résultats par ordre croissant";
var sortup = ": Trier les résultats par ordre décroissant";
}
$('#form1\\:memberRidingList').DataTable({
     "oLanguage": {
             "sInfo": sInfofr,
          "sInfoEmpty": sInfoEmptyfr,
          "sZeroRecords": sZeroRecordsfr,
          "sInfoFiltered": sInfoFilteredfr,
          "sSearch": sSearchfr,

           "oAria": {
        "sSortAscending": sortup,
        "sSortDescending": sortdn
        }
    },
"paging":   false
} );

$("table.display tbody tr:nth-child(even)").addClass("even");

if (lang==='en'){

$(".dataTables_filter label").html('Filter:<input type="search" class placeholder aria-controls="form1:memberRidingList">');    //add new label 'filter' replace 'Search'

}

});

我应该根据html和标签名称的匹配来更改它吗? 谢谢

最佳答案

SOLUTION

您可以使用language选项并使用 aria.sortAscending 和 aria.sortDescending 属性自定义文本。

var table = $('#example').DataTable({
   "language": {
        "aria": {
            "sortAscending":  ": Activate to sort column ascending",
            "sortDescending": ": Activate to sort column descending"
        }           
   }
});

DEMO

参见this jsFiddle用于代码和演示。

关于jquery - 使用 Jquery 更改可排序表上的升序和降序状态的 aria-label,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33875698/

相关文章:

php - 如何在php/mysql中根据列高效打印数据库排序中的名称?

javascript - 数据表错误 'Failed to execute appendChild()'

javascript - 在任何元素悬停时更改页面背景(不是元素 BG)。

javascript - jQuery 代码无法工作,无法理解标记

javascript - 如何跨窗口传递事件,可能吗?

arrays - 需要根据单独数组的排序对4个不同的数组进行排序

php - 用另一个数组重写数组的键

mysql - DataTables - 过滤一组值中的数据

javascript - DataTable slidedown row.child()

javascript - 从第二个 div 中删除按钮,这将与第一个 div html,jquery 中的相同 id(class) 按钮