我想更改过滤器输入旁边的"搜索"文本内容。我使用表模板并生成搜索过滤器,我想更改 search 文本,因为我想使用其他语言。
使用开发工具我发现DIV ID是 user_data_filter ,它在标签元素下。
我可以通过复制输入表单并更改搜索文本
来更改此操作。$('#user_data_filter label').html('Keresés: <input type="search" class="form-control input-sm" placeholder aria-controls="user_data">');
但是,在我更改后,过滤器不起作用,我不知道为什么..
这是html:
<html>
<head>
<title>Iskola Tábla</title>
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" />
<script src="https://cdn.datatables.net/1.10.15/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/1.10.15/js/dataTables.bootstrap.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.6.4/css/bootstrap-datepicker.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.6.4/js/bootstrap-datepicker.js"></script>
<style>
body
{
margin:0;
padding:0;
background-color:#f1f1f1;
}
.box
{
width:1270px;
padding:20px;
background-color:#fff;
border:1px solid #ccc;
border-radius:5px;
margin-top:25px;
box-sizing:border-box;
}
</style>
</head>
<body>
<div class="container box">
<h1 align="center">Iskola Tábla</h1>
<br />
<div class="table-responsive">
<br />
<div align="right">
<button type="button" name="add" id="add" class="btn btn-info">Hozzáadás</button>
</div>
<br />
<div id="alert_message"></div>
<table id="user_data" class="table table-bordered table-striped">
<thead>
<tr>
<th>Ügyfél neve</th>
<th>Termék</th>
<th></th>
</tr>
</thead>
</table>
</div>
</div>
</body>
</html>
<script type="text/javascript" language="javascript" >
$(document).ready(function(){
fetch_data();
function fetch_data()
{
var dataTable = $('#user_data').DataTable({
});
}
});
</script>
有人可以帮助我更改 search 用工作过滤器更改文本内容吗?
这些标签和控件是数据塔的一部分,直到初始化才可用。如果您真的想继续使用此方法,则可以使用回调函数:
var dataTable = $ ('#user_data').DataTable({
"initComplete": function (settings, json){
$('# user_data_filter label').html('Keresés: <input type = "search" class = "form-control input-sm" placeholder aria-controls="user_data">');
}
});
但是,如果我正确理解您,您想以其他语言显示数据。因此,我强烈建议您仔细研究DataTable已经为您带来的许多选择,而不是试图重新发明轮子。
https://datatables.net/reference/option/language
https://datatables.net/manual/i18n
您的代码似乎可以正常工作,您的$('#user_data_filter label').html('...');
行是否放在$(document).ready
函数中?对我有用。
如果您想使替换更具动态性,则只能替换"搜索"单词。该代码看起来像这样,也将其放置在$(document).ready
函数中。
var labelElem = $("#user_data_filter > label");
var newText = labelElem.html().replace("Search", "Keresés");
labelElem.html(newText);
jsfiddle示例。