簡體   English   中英

當我在 node.js 中調用 ajax 作為返回 undefined

[英]When i call the ajax in node.js as a return undefined

我的 node.js 代碼

索引.js

var mysql = require('mysql');
var fs = require('fs');
var ejs = require('ejs');
var client = mysql.createConnection({
    user : 'root',
    password : '1234',
    database : 'company'
});
exports.index = function(req, res) {
fs.readFile('views/index.html','utf-8',function(error,data){
    client.query('select * from spa',function(error,result){
        if(error){
            console.log('error:'+error);
        }else{
            res.send(ejs.render(data,{
                title:'Express',
                result:result
            }));
        }//end else
    });//end query
});//end fs
};

我的 index.html 代碼

 <script>
$(document).ready(function() {
    function listView() {
        $('#output').empty();
        $.ajax({
            url : '/',
            type : 'GET',
            success : function(result) {
                alert('success');
                alert(typeof (result));
                $(result).each(function(index, item) {
                    var output = '';
                    output += '<tr>';
                    output += '<td>' + item.file_no + '</td>';
                    output += '<td>' + item.file_name + '</td>';
                    output += '<td>' + item.file_content + '</td>';
                    output += '<td>' + item.file_model + '</td>';
                    output += '</tr>';
                    $('#output').append(output);
                });//end each
            }//end success
        });//end ajax
    }//end listView();
   });//end document
 </script>

<table id="output"></table>

當我運行代碼直到成功執行時。 警報('成功') - >工作!

警報(typeof(結果))->字符串>工作! 但是未定義的所有數據表。

我不知道情況.. 請幫助我..

假設您只想遍歷結果對象,而不是這樣:

$(result).each(function(index, item) {

我想你可能想要:

$.each(result, function(index, item) {

如果這仍然不能讓你到達你想要的地方,那么添加一個

console.log(result);

准確檢查 ajax 調用的結果是什么,並確保您擁有完全符合預期的數據,並且您正在迭代其中的正確部分。

你說typeof (result)string ,希望是JSON 但是如果想迭代它,那么你必須解析為javascript數組

var resultArray = JSON.parse(result);

然后遍歷一個數組

$.each(resultArray, function(index, item) {

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM