Heim >Web-Frontend >js-Tutorial >Lösen Sie die Probleme, die bei der Implementierung der JS-Komponenten-Bootstrap-Tabelle paging_javascript-Fähigkeiten auftreten

Lösen Sie die Probleme, die bei der Implementierung der JS-Komponenten-Bootstrap-Tabelle paging_javascript-Fähigkeiten auftreten

WBOY
WBOYOriginal
2016-05-16 15:04:411347Durchsuche

In diesem Artikel werden die Probleme des Bootstrap-Table-Pagings als Referenz erläutert. Der spezifische Inhalt lautet wie folgt:

Problem 1: Der Server kann den Formularwert nicht abrufen. Es gibt kein Problem mit der Abfragezeichenfolge, aber request.form kann den Wert nicht abrufen

Lösung: Dies ist ein Ajax-Problem. Der Originalcode verwendet natives Ajax. 1 kann durch Lesen von Stream-Dateien gelöst werden. 2 Wenn Sie die Methode request.form verwenden möchten, legen Sie contentType fest: „application/x-www-form-urlencoded“,

als

 $('#tableList').bootstrapTable({
method: 'post',
url: "",
height: $(window).height() - 200,
striped: true,
dataType: "json",
pagination: true,
"queryParamsType": "limit",
singleSelect: false,
contentType: "application/x-www-form-urlencoded",

Frage 2. Legen Sie die an den Server übergebenen Parameter fest

Methode:

function queryParams(params) {

return {
pageSize: params.limit,

pageNumber: params.pageNumber,

UserName: 4

};

}

 $('#tableList').bootstrapTable({
method: 'post',
url: "",
height: $(window).height() - 200,
striped: true,
dataType: "json",
pagination: true, 

queryParams: queryParams,

Problem 3. Die pageSize-Informationen können nicht im Hintergrund abgerufen werden

Lösung:

1 ist in queryParams eingestellt

2 Ändern Sie die Quelldatei in der Datei „bootstrap-table.minjs“ in

"limit"===this.options.queryParamsType&&(e={limit:e.pageSize,pageNumber:e.pageNumber,

Sie können auch bootstrap-table.js ändern

if (this.options.queryParamsType === 'limit') {
params = {
search: params.searchText,
sort: params.sortName,
order: params.sortOrder
};
if (this.options.pagination) {
params.limit = this.options.pageSize;

params.pageNumber=this.options.pageNumber,
params.offset = this.options.pageSize * (this.options.pageNumber - 1);
}
}

Konfiguration hinzugefügt „queryParamsType“: „limit“,

Abgeschlossen

<script type="text/javascript">




$(document).ready(function() {
 $('#tableList').bootstrapTable({
method: 'post',
url: "getcompapylist",
height: $(window).height() - 200,
striped: true,
dataType: "json",
pagination: true,
"queryParamsType": "limit",
singleSelect: false,
contentType: "application/x-www-form-urlencoded",
pageSize: 10,
pageNumber:1,
search: false, //不显示 搜索框
showColumns: false, //不显示下拉框(选择显示的列)
sidePagination: "server", //服务端请求
queryParams: queryParams,
//minimunCountColumns: 2,
responseHandler: responseHandler,
columns: [
{
field: 'CompanyId',

checkbox: true

},
{
field: 'qq',

title: 'qq',

width: 100,

align: 'center',

valign: 'middle',

sortable: false

}
,
{
field: 'companyName',

title: '姓名',

width: 100,

align: 'center',

valign: 'middle',

sortable: false

}
]
});

});
function responseHandler(res) {


if (res.IsOk) {
var result = b64.decode(res.ResultValue);

var resultStr = $.parseJSON(result);
return {
"rows": resultStr.Items,
"total": resultStr.TotalItems
};

} else {
return {
"rows": [],
"total": 0
};
}

}

//传递的参数

function queryParams(params) {

return {
pageSize: params.limit,

pageNumber: params.pageNumber,

UserName: 4

};

}
</script>

Frage 4. Nach dem Blättern erneut suchen

Voraussetzung: Benutzerdefinierte Such- und Paging-Funktion, z. B. die Funktion zur Suche nach Produktnamen.

Phänomen: Bei der Suche nach aufblasbaren Puppen werden 100 Datensätze zurückgegeben und auf die fünfte Seite umgedreht. Bei der Suche nach Massagestäben werden auf der ersten Seite 200 Datensätze angezeigt, die tatsächliche Anzeige erfolgt jedoch Das Ergebnis ist, dass sich die Seitenzahl nach einer erneuten Suche nicht geändert hat

Lösung: Setzen Sie einfach die Option zurück.

 function search(){

 $('#tableList').bootstrapTable({pageNumber:1,pageSize:10});

}
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn