javascript - 引导数据表搜索输入不会改变
问题描述
我使用引导数据表,并且我有一个搜索输入,无论我做什么都不会删除搜索文本并添加占位符。我在堆栈和谷歌上看到了这里的例子,但这没有帮助。
我相信这是搜索输入的 js:
function _fnFeatureHtmlFilter ( settings )
{
var classes = settings.oClasses;
var tableId = settings.sTableId;
var language = settings.oLanguage;
var previousSearch = settings.oPreviousSearch;
var features = settings.aanFeatures;
var input = '<input type="search" class="'+classes.sFilterInput+'"/>';
var str = language.sSearch;
str = str.match(/_INPUT_/) ?
str.replace('_INPUT_', input) :
str+input;
var filter = $('<div/>', {
'id': ! features.f ? tableId+'_filter' : null,
'class': classes.sFilter
} )
.append( $('<label/>' ).append( str ) );
var searchFn = function() {
/* Update all other filter input elements for the new display */
var n = features.f;
var val = !this.value ? "" : this.value; // mental IE8 fix :-(
/* Now do the filter */
if ( val != previousSearch.sSearch ) {
_fnFilterComplete( settings, {
"sSearch": val,
"bRegex": previousSearch.bRegex,
"bSmart": previousSearch.bSmart ,
"bCaseInsensitive": previousSearch.bCaseInsensitive
} );
// Need to redraw, without resorting
settings._iDisplayStart = 0;
_fnDraw( settings );
}
};
var jqFilter = $('input', filter)
.val( previousSearch.sSearch )
.attr( 'placeholder', language.sSearchPlaceholder )
.bind(
'keyup.DT search.DT input.DT paste.DT cut.DT',
_fnDataSource( settings ) === 'ssp' ?
_fnThrottle( searchFn, 400 ):
searchFn
)
.bind( 'keypress.DT', function(e) {
/* Prevent form submission */
if ( e.keyCode == 13 ) {
return false;
}
} )
.attr('aria-controls', tableId);
// Update the input elements whenever the table is filtered
$(settings.nTable).on( 'search.dt.DT', function ( ev, s ) {
if ( settings === s ) {
// IE9 throws an 'unknown error' if document.activeElement is used
// inside an iframe or frame...
try {
if ( jqFilter[0] !== document.activeElement ) {
jqFilter.val( previousSearch.sSearch );
}
}
catch ( e ) {}
}
} );
return filter[0];
}
如您所知,数据表不显示在 HTML 中,所以它的 js.
解决方案
您可以使用以下代码
oLanguage: {
"sSearch": ""
},
对于占位符,输入以下代码
$('.dataTables_filter input').attr("placeholder", "search...")
;
推荐阅读
- php - PHP从Android studio volley Get请求接收JSON对象
- javascript - HTML5 Canvas 绘制一堆可调整大小图形的最佳方式
- kubernetes - 在 Prometheus 中解析 JSON rest api 响应
- prism - 在对话框视图模型中取消打开对话框
- linux - 如何在 ubuntu 18.04 中禁用 wifi 显示密码
- sql - MS Access 查询语法
- python - 在pygame中将矩形保留在屏幕中
- android - EncryptedSharedPreference 安全吗?
- android - 如何使用c代码android从设备获取IMEI号码
- java - java process builder用其他目录启动cmd