【问题标题】:How do I get the next row of database results from a button click using Node.js?如何使用 Node.js 通过单击按钮获取下一行数据库结果?
【发布时间】:2020-09-04 21:55:26
【问题描述】:

我正在使用 Node.js 为我的网页提供服务并从 mysql 获取数据库结果。现在我已经成功连接并显示了第一行数据。(我在下面的 html 代码中使用这些作为按钮值)但是,我希望用户能够单击一个按钮并获取下一行数据.

var express = require("express");
var app = express();
var mysql = require('mysql');

var con = mysql.createConnection({
  // working connection
});

con.connect(function(err) {
  if (err) throw err;
  con.query("SELECT * FROM my_table limit 10", function (err, result, fields) {
    if (err) throw err;
    else{
      sandbox.big1Value = result[0].big1;
      sandbox.big2Value = result[0].big2;
    }
  });
});

app.get('/mypage', function (req, res) {
    res.render('mypage', { dbinput: sandbox });
});

<button type="button" id="big1" onclick="myFunction(this.value)" value=<%= dbinput.big1Value %> ><%= dbinput.big1Value %> </button>
<button type="button" id="big2" onclick="myFunction(this.value)" value=<%= dbinput.big2Value %>><%= dbinput.big2Value %> </button>
<!-- I want this button to get the next set of values -->
<button type="button" id="next" onclick="doSomething()" value="Next">Next One</button>

【问题讨论】:

    标签: javascript mysql node.js express


    【解决方案1】:

    你可以在mysql From documentation中使用limit和offset来做到这一点

    语法:LIMIT {[offset,] row_count | row_count OFFSET offset}

    在您的情况下,您可以使用:

    SELECT * FROM my_table LIMIT 10, 10;  # Retrieve rows 11-20
    

    【讨论】:

    • 我知道如何从 mysql 获得更多结果。问题是如何在我的网页上显示下一个数据。感谢您的帮助。
    • 你想进行分页吧?您可以做的是,使用 express.js 创建您的 API,获取行数,将它们除以您的限制,例如 10 并显示按钮,现在您可以将这些按钮路由到页码,例如 get/&lt;page number&gt; You can checkout tutorial here
    • 有一个库可以让你的任务变得简单,试试datatable.js
    猜你喜欢
    • 1970-01-01
    • 2023-04-04
    • 2012-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多