小编Ist*_*med的帖子

node.js,express - 以同步方式在循环内一个接一个地执行mysql查询

在我的node.js,表达应用程序,我正在与superagent中间件进行ajax调用.该调用使用node-mysql中间件通过相当多的数据库查询来获取复杂数组中的数据库数据.

在粘贴代码之前,我试图用语言解释我想要做什么,尽管代码足以说明它想要做什么,并且第一次回调中的所有异步事件应该以同步方式完成.

说明:

在第一个查询的回调中,执行for循环以多次运行第二个查询,并且在每个循环之后,仅在第二个查询的回调完成后才调用下一个循环.下一个代码行的情况也是一样的.

码:

但是,您可以跳过 for循环的内部(在注释中标记),以便在需要时简化和简化.

conn.query("SELECT * FROM `super_cats`",function(error, results, fields) {   

        if(error){console.log("erro while fetching products for homepage "+ error);}

        for(var i in results) { // FIRST FOR LOOP INSIDE THE FIRST QUERY CALLBACK

            /*Innards of for loop starts*/    
            var elem = new Object();
            var supcat_id=results[i].id;
            elem.super_id =supcat_id;
            elem.cats=new Array();
            var cat= '';
            /*Innards of for loop ends*/ 

            conn.query("SELECT * FROM `categories` WHERE `supcat_id`="+supcat_id,function(error_cats, results_cats, fields_cats) {   

                if (error_cats) …
Run Code Online (Sandbox Code Playgroud)

asynchronous node.js express node-mysql

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

jQuery UI Dialog第二次没有打开

我正在使用jqueryui作为对话框.第一次点击"点击模态"链接有效.按下该ESC键时,对话框消失.但之后的点击不起作用.我希望那些也能奏效.刷新页面使一切正常.

HTML:

<a href="" class="click_me" style="font-size:15px;"> Click for a modal</a><br />

<div class="demo" ">

<div id="dialog" title="&nbsp;&nbsp;&nbsp;Upload Your Profile Picture" style="border1111:1px solid red; width:640px;">

       this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is this is …
Run Code Online (Sandbox Code Playgroud)

javascript jquery jquery-ui jquery-ui-dialog

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

c9.io - 如何在node.js平台中找到主机地址以建立mysql连接

我正在尝试在Cloud 9 Server中托管我的node.js应用程序.为了建立mysql连接,我需要知道主机地址.

这个页面 说的非常荒谬(我认为我是对的)方式:

Hostname    $IP     The same local IP as the application you run on Cloud9
Run Code Online (Sandbox Code Playgroud)

但是我从哪里获得本地IP?在我发现的文档中没有任何地方.任何的想法 ?

编辑: 我使用127.0.0.1,0.0.0.0(来自echo $IP答案中建议的终端)和终端中的值 hostname -Icurl curlmyip.com.4个不同的IP地址.没有用.

mysql node.js cloud9-ide

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

jQuery .each()方法的两个参数的解释

在下面的jQuery中,该.each()方法有两个参数:'ul li a'menu.这两个论点意味着什么?

var menu = $('.menu');
$('ul li a', menu).each(function() {
    $(this).append('<span />');
});
Run Code Online (Sandbox Code Playgroud)

HTML:

<div class="menu">
    <ul>
        <li><a href="#">Edit Profile</a></li>
        <li><a href="#">Account Settings</a></li>
        <li><a href="#">Appear Offline</a></li>
        <li><a href="#">Logout</a></li>
    </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

鼠标悬停,只使文字加粗,下划线应正常

简单的HTML和CSS.

码:

   <div class="link_my"> <a href="a.php">my link</a></div>
Run Code Online (Sandbox Code Playgroud)

CSS:

.link_my a:hover{

font-weight:bold;
text-decoration:underline;

}
Run Code Online (Sandbox Code Playgroud)

鼠标悬停时,文本字体与ubderline一起变为粗体.但我希望下划线是正常的(不是粗体).

怎么做 ?

html css

5
推荐指数
1
解决办法
6万
查看次数

::选择文本颜色的两个CSS规则 - 为什么不能同时选择它们?

::selection如果以下列方式编写,更改文本颜色的代码可以正常工作:

HTML:

<p>This is a paragraph.</p>
Run Code Online (Sandbox Code Playgroud)

CSS:

p::selection { // This works
  color:#ff0000;
}

p::-moz-selection { // This works
  color:#ff0000;
}
Run Code Online (Sandbox Code Playgroud)

但是,如果我将两个CSS规则放在同一行上,如下所示,则不起作用:

HTML:

<p>This is a paragraph.</p> 
Run Code Online (Sandbox Code Playgroud)

CSS:

p::selection, p::-moz-selection { // // This does not work
  color:#ff0000;
}
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用?CSS在同一行中写两条不同规则的规则是什么?

css css3

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

jQuery拖放模拟对最后一个draggable不起作用

我试图使用jquery-ui的jquery-simulate-ext插件来模拟拖放 模拟.

在我提供场景细节之前,让我告诉你这里的js小提琴.

我有3列divs.在第1列中,我有3个带有国家/地区名称的可拖动,第2列有3个空白的dropable divs 和第3列3个div带有城市名称的正常s.因此,在第一列的所有可拖动物落在第二列之后,第二和第三列行将了解乡村与城市的关系.

但问题是在模拟完成后,第一个和第二个可拖动器被丢弃在预期的可投放器上,但第三个可拖动只是粘在鼠标上而不是掉落在投放器上.要查找行为,在上面提到的js小提琴页面加载后,只需将鼠标光标移动到结果部分,您就会看到一个可拖动的鼠标也随之移动.您必须单击某处以使可拖动的坐在可放置或可拖动的部分(取决于您单击的区域).这只发生在Firefox中,在chrome中,draggable只是随着光标一起移动到适当的可放置部分内部,然后自动进入内部.

我想要的是: 与其他可拖动器一样,第三个拖动器不应随着鼠标的移动而移动,并且应该自动坐在所需的可放置物上.

代码说明:

每个div具有类的draggable draggable_div都有一个属性data-index(值1,2,3等).droppable divs(with class droppable_blank)也是如此.现在在JS代码的开头,我有一句话:

answers_found='[1,2,3]';
Run Code Online (Sandbox Code Playgroud)

这些基本上是data-index可拖动的值.值的顺序仅显示data-index可拖动值位于droppable上时的值的顺序.在上面提到的情况下,第一个值是1,因此它将是第一个(不是第二个或第三个)可拖动的,它将位于第一个droppable上.类似地,第二和第三可拖动将连续地位于第二和第三可放置.

代码执行以下for循环

for(var i =0; i<answers_found.length; i++){
Run Code Online (Sandbox Code Playgroud)

answers_found数组中获取每个值.该值是可拖动的data-index属性值.然后call_trigger_drop 函数给出2个参数:

call_trigger_drop(parseInt(answer_found_indiv),droppable_index);
Run Code Online (Sandbox Code Playgroud)

第一个是可拖动索引,第二个是相应的可放置索引,即拖动将位于droppable上.然后使用以下行进行实际模拟:

draggable.simulate("drag", {
                dx: dx,
                dy: dy
            });
Run Code Online (Sandbox Code Playgroud)

TL; DR:

模拟第一列中的可拖动物落在第二列上的droppables上,而第三列是正常divs.在拖放模拟之后,第3个draggable不会位于Firefox中的第3个droppable上,并随光标移动直到发生单击.如何让它像其他拖动器一样自动坐在droppable上?

编辑:
如果你想把结果作为一个普通的网页而不是js-fiddle,你可以在这里找到.

jquery drag-and-drop jquery-ui jquery-ui-draggable jquery-ui-droppable

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

VueJs:从组件内部的根元素使用方法

在一个简单的HTML页面中,我使用了以下vueJs代码。我需要单击按钮,该按钮将在DOM中插入一个复选框和一个文本。

我的代码如下:

<template id="add-item-template">
    <div class="input-group">
        <input  v-model="newItem" placeholder="add shopping list item" type="text" class="form-control">
        <span class="input-group-btn">
            <button @click="addItem" class="btn btn-default" type="button">Add!</button>
        </span>
    </div>
</template>

<div id="app" class="container">
    <h2>{{ title }}</h2>
    <add-item-component></add-item-component>
</div>
Run Code Online (Sandbox Code Playgroud)

而javascript部分是:

<script>
    var data = {
        items: [
            {
                text: 'Bananas', 
                checked: true 
            }, 
            { 
                text: 'Apples', 
                checked: false 
            }
        ],
        title: 'My Shopping List'
    };

    Vue.component('add-item-component', {
        template: '#add-item-template',
        data: function () {
            return {
                newItem: ''
            }
        },
        props:['addItem']
    });

    new Vue({
        el: '#app',
        data: data, …
Run Code Online (Sandbox Code Playgroud)

javascript vue.js vuejs2

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

javascript函数在jquery $(document).ready块中不起作用

我试图JavaScriptonclick触发器调用函数.

HTML 部分:

<div class="my_radio">
    <input type="radio" name="my_radio" value="1" onclick="my_func()"/>  first button
</div><!-- end of class my_radio -->
Run Code Online (Sandbox Code Playgroud)

JavaScript代码

<script type="text/javascript">
    $(document).ready(function(){
        function  my_func(){
            alert("this is an alert");
        }
    });
</script>
Run Code Online (Sandbox Code Playgroud)

这是行不通的.

但是,如果我将该JavaScript功能 保留在$(document).ready()代码之外,它就可以工作.以下是相关的代码段:

<script type="text/javascript">
    $(document).ready(function(){
        function  my_func111(){
            alert("this is an alert");
        }
    });

    function  my_func(){
        alert("this is an alert");
    }
</script>
Run Code Online (Sandbox Code Playgroud)

1)为什么第一个JavaScript代码片段不起作用?

2)如何让第一个JavaScript代码段工作?

编辑:

因此我知道,$(document).ready()当网页完全加载时执行.那么my_func()如果我my_func()在外面写,如何防止在完整页面加载之前或之后激活$(document).ready()

javascript jquery

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

为什么javascript变量没有在所有外部JS文件中更改

变量a在主文件中被删除.然后,a.jsb.js包括在内.JS文件包含以下内容.

a.js:

a+=100;
Run Code Online (Sandbox Code Playgroud)

b.js:

a=+200;
Run Code Online (Sandbox Code Playgroud)

主文件:

<script type="text/javascript">
     a=30;
</script>
<script type="text/javascript" src="js/a.js"></script>
<script type="text/javascript" src="js/b.js"></script>
    a+=90;
    console.log("a = " + a);
</script>
Run Code Online (Sandbox Code Playgroud)

控制台显示a=290.为什么 a 不是420(即30 + 100 + 200 + 90)?为什么没有a在这两个改变a.jsb.js

javascript jquery

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