相关疑难解决方法(0)

数据仅在提醒后可用

可能重复:
jQuery:在ajax调用成功后返回数据

我写了一个脚本,在里面用一个select字段添加一个新的div容器.select字段的数据之前加载了ajax请求.但由于某种原因,只有当我使用alert()输出内容时,这些字段才可见.

var o = '';
            $.ajax({
                type: 'post',
                dataType: 'json',
                url: webroot + 'items',
                success: function(data) {
                    $.each(data, function(index, value) {
                        o += '<option value="' + index + '">' + value + '</option>';
                    });
                }
            });
            var l = parseInt($('.items .item').length);
            var h = '<div class="item"><span class="bold">Item ' + (l + 1) + '</span><select id="ItemName" name="data[Item][name]">' + o + '</select></div>';
Run Code Online (Sandbox Code Playgroud)

我实际上不知道如何解决这个问题.你能帮助我吗?

javascript jquery

3
推荐指数
1
解决办法
681
查看次数

javascript - 为什么有同步和异步模块的规范?

我刚刚读完这篇关于 Javascript 模块的文章。我可以理解CommonJS模块是同步加载的,而AMD模块是异步加载的。

我不明白的是,如果我以 CommonJS 格式编写它,模块如何变得神奇地同步,或者如果我以AMD 格式编写它,它如何变得神奇地异步。我的意思是 javascript 甚至没有defineorrequire关键字。它们只是规范而不是库。

我的意思是模块加载的行为取决于模块加载器,而不是模块的结构。如果是这样的话,为什么要遵循不同类型模块的编码模式呢?

我是否正确地假设 NodeJS 世界中的所有库都是同步加载的,无论它们以什么格式编写。并且浏览器空间中的所有模块都是异步加载的。

如果我的上述假设是正确的,那么为什么还有 UMD 规范?我的意思是,如果脚本根据其所在的环境进行加载,那么为什么要制定通用模块加载规范呢?

有人可以帮我解决这个困惑吗?

javascript asynchronous node.js

3
推荐指数
1
解决办法
3622
查看次数

如何在 Ajax 调用之外使用来自 ajax 成功函数的响应数据

我有一个问题,当我进行 ajax 调用时,在成功函数中我得到了 json 数据,我不能在成功函数中使用它

 $.ajax({
        type: 'GET',
        url: url,
        dataType: 'json',
        success: function (response) {
            getData[name] = response;

        }
    });
 alert(getData[name]);
Run Code Online (Sandbox Code Playgroud)

我的问题是如何在 ajax 调用中使用 getData

ajax jquery

2
推荐指数
1
解决办法
3万
查看次数

在jquery中将对象传递给回调函数

我最近正在研究小型聊天模块,它需要不断检查服务器是否有新消息.

我正在向服务器发送ajax请求,服务器保持连接,直到找到新消息(长轮询).

代码:

var chatController = function(){

//other variable declaration

/**
*  Ajax call to monitor the new message , on complete of ajax call sending other call
*/

this.checkNewMessage = function(){
  console.log(this); // placed this for debugging purpose
       $.ajax({
         url : SITEURL.CHECK_MESSAGE,
         data : this.currrentUserDetails,
         dataType : 'json' ,
         cache    : false,
         success  :(function(obj){
            //temp = obj;
            return obj.parseNewMessageResponse;
         })(this),
         complete: (function(obj){
            //temp = obj;
            return obj.checkNewMessage;
         })(this),  
       });


};

  // other function and variable

});
Run Code Online (Sandbox Code Playgroud)

当我试着打电话的时候

var mainController …
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery

1
推荐指数
1
解决办法
2059
查看次数

NodeJS,承诺和表现

我的问题是我的NodeJS应用程序的性能...

如果我的程序运行12次迭代,每次1.250.000 = 15.000.000次迭代 - 它需要亚马逊的专用服务器以下时间来处理:

r3.large:2个vCPU,6.5个ECU,15 GB内存 - > 123分钟

4.8xlarge:36个vCPU,132个ECU,60 GB内存 - > 102分钟

我在下面的代码中有一些代码similair ...

start();

start(){

  for(var i=0; i<12; i++){

      function2();    // Iterates over a collection - which contains data split up in intervals - by date intervals. This function is actually also recursive - due to the fact - that is run through the data many time (MAX 50-100 times) - due to different intervals sizes...
    }
}

function2(){

  return new Promise{

    for(var i=0; i<1.250.000; …
Run Code Online (Sandbox Code Playgroud)

memory performance nested-loops node.js es6-promise

1
推荐指数
1
解决办法
1398
查看次数

Node.js:如何在 Sequelize 中使用 Postgres 存储过程?

我最近正在学习这个强大的ORM 的所有规范,比如迁移表、定义模式、定义模型、关联、插入等。

我的特定问题是如何在 sequelize 中管理 Postgres 存储过程 (SP)?

我在我的服务器上使用 Node.js。

database postgresql stored-procedures node.js sequelize.js

1
推荐指数
1
解决办法
2688
查看次数

node.js~构造Promise的链式序列解析

任何人都可以建议一种更好的方法来构建Promises的使用吗?我对Promises很新,我想知道我是否遗漏了一些关于如何构建这一系列事件的东西.

注意:我打算不在这里使用rej [ect].你看到guatanrees只有res [olve]返回.这意味着返回的代码只需要一个路径来处理返回的值.因此返回的代码在它的流程中更简单.

如果您不认识它,可能会有所帮助,这取自我创建的模块.把它想象成道.

module.exports = {

    dbConnection: function () {
        return { user: 'sa', password: 'mypassword', server: 'localhost', database: 'mydb' };
    },


    CanIConnectToTheDB: function () {
        return new Promise(function (res, rej) {
            var sql = require('mssql');
            var myDao = require('./myDao');
            var cn = new sql.ConnectionPool(myDao.dbConnection());

            cn.connect().then(function () {
                var req = new sql.Request(cn);
                var qry = 'select serverproperty(\'productversion\') as \'rs\'';
                req.query(qry)
                    .then(function (rs) {
                        qry = 'select isnull(object_id(\'SomeObjectIKnowExists\'), -1)';
                        req.query(qry)
                            .then(function (rss) {
                                res(' CONNECTED// MASTER DB SUCCESS// …
Run Code Online (Sandbox Code Playgroud)

javascript node.js promise

1
推荐指数
1
解决办法
292
查看次数

如何在javascript中将AJAX函数内的值返回给parent?

我试图根据其中的AJAX函数的响应将函数返回true或false,但我不知道该怎么做.

(function($) {
    $('#example').ajaxForm({
        beforeSubmit : function(arr, $form, options) {

            var jsonStuff = JSON.stringify({ stuff: 'test' });

            $.post('/echo/json/', { json: jsonStuff }, function(resp) {

                if (resp.stuff !== $('#test').val()) {
                     // Cancel form submittion
                     alert('Need to type "test"');
                     return false; // This doesn't work          
                }

            }, 'json');

        },
        success : function() {
             alert('Form sent!');   
        }
    });   
})(jQuery);?
Run Code Online (Sandbox Code Playgroud)

我做了一个小提琴来更好地说明这一点:

http://jsfiddle.net/vengiss/3W5qe/

我正在使用jQuery和Malsup的Ajax Form插件,但我相信这个行为与插件无关,我只需要根据请求return false来处理beforeSubmit函数,POST这样每次都不会提交表单.有人能指出我正确的方向吗?

提前致谢!

javascript ajax jquery

0
推荐指数
1
解决办法
2423
查看次数

等到ajax请求完成

这是一个javascript函数:

  function getValue(key) {
    var value;
    switch(_options.myType){
      case "cookie":
        value = readFromCookie(key);
        break;
      case "localStorage":
        value = readFromLocalStorage(key);
        break;
      case "db":
        //return value from the server
        // how do I wait for the result?
        $.ajax({
            type: "GET",
            url: "123",
            data: { .... },
            success: function(data){
               value = data; 
            }
        });
        break;
    }
    return value;
  };
Run Code Online (Sandbox Code Playgroud)

在发送ajax请求的情况下,我需要等待直到ajax请求完成.我该怎么做?

并非我不能在没有计算值的情况下离开函数.这意味着我不能在success:处理程序中放置一个函数,以后会返回值(或者我可能不明白?).所以必须在函数内计算getValue().

UPDATE

PS那么如何重构我的代码才能在success:处理程序中使用回调?这是代码的第二部分:

MyClass123.prototype.myMethod = function(value) {
      //..............
      var var1 = this.getValue("key1");
      if (var1 == …
Run Code Online (Sandbox Code Playgroud)

javascript ajax

0
推荐指数
1
解决办法
2515
查看次数

如何使用Express从一个端点发送多个查询?

我试图多次查询我的数据库并构建一个对象,该对象在一个字段中存储我的数据库的每个响应.这是我的代码:

router.post('/search', (req, res) => {
    var collection = db.get().collection('styles')
    var data = [];

    collection.distinct('make.name', (err, docs) => {
      data.push({'make': docs });
    });

    collection.distinct('model', (function (err, docs) {
        data.push({'model': docs });
    }))

    res.send(data);
});
Run Code Online (Sandbox Code Playgroud)

由于NodeJS/Express是异步的,因此无法正常工作.如何重建此端点以进行多个数据库调用(来自同一个集合)并返回包含它的对象?

javascript rest node.js express

0
推荐指数
1
解决办法
2127
查看次数

如何将Waterfall方法转换为promise

下面是使用async-waterfall方法的代码段.我怎么能用诺言转换这个.

async.waterfall([
    function(callback){
     User.update({username: user.username}, {$set: update_list}, function(err, a_user) {
      if (err) {
        err = new Error();
        err.code = 400;
        err.message = "Unexpected error occurred."
        callback(err)
      }
      if (!a_user) {
        err = new Error();
        err.code = 400;
        err.message = "User not found."
        callback(err)
      }else{
        callback(null, "updated", user_image);
      }
    })
   }, function(message, user_image, callback){
    if(user_image == undefined){
      callback(null, "done")
    }else{
      Bean.update({username: user.username, status:"Active"}, {$set: {user_image:user_image}},{multi:true},function(err, beanUpdated){
        if(err){
          err = new Error();
          err.code = 400;
          err.message = "Unexpected error occurred."
          callback(err)
        }else{ …
Run Code Online (Sandbox Code Playgroud)

javascript waterfall callback node.js promise

-3
推荐指数
1
解决办法
1119
查看次数