javascript - 如何将数据传递到 Bootstrap 模型中?

标签 javascript jquery node.js twitter-bootstrap sails.js

我的基础环境是node.js,sails.js和 MongoDB。

我正在生成一个 SVG,其中包含从数据库中提取的数据和坐标,并使用“onclick”功能来调用打开模式窗口的函数。我的最终目标是能够单击一个形状(代表一个长凳)并打开一个包含该形状/长凳的数据库信息的模式。我遇到的问题是弄清楚如何将数据传递到模式,以便它知道我选择了哪个形状/工作台并列出该数据库对象的数据。目前,如果我通过选择一个工作台打开一个模态,它会将我进行的每个变量调用(this.example)列为“未定义”,这显然是因为它没有传递该数据。

我如何生成形状/长凳的示例:

// Foreach function generates shapes/benches from 'lab' collection in DB.
// bFill variable is generated within this function based on whether this bench is set to active or not.

<rect 
    id="<%= lab.number%>" 
    x="<%= lab.x %>" 
    y="<%= lab.y %>" 
    fill="<%= this.bFill %>" 
    stroke="#000000" 
    stroke-width="0.25" 
    stroke-miterlimit="10" 
    width="<%= lab.w %>" 
    height="<%= lab.h %>" 
    onclick="bench(this.id)" 
    >

我调用的函数示例:

function bench(bNum) {
            $('#myModal').modal("show");
        }

我对 JS、JQuery 和 Bootstrap 还很陌生,所以我想我忘记了一些明显的事情。任何帮助将不胜感激。

最佳答案

通常,如果你想将一些变量传递给 JavaScript 函数,你应该定义一个带有一些参数的函数。对于您的情况,您可以执行以下操作:

function bench(data1, data2, ...) {
       $('#myModal .modal-body').html("data1: " + data1 + " - data2: " + data2); //Or something like this
       $('#myModal').modal("show");
    }


 onclick="bench(this.id, 'Test')" 

如果您看到 undefined 错误,则问题出在 this.id 上。

关于javascript - 如何将数据传递到 Bootstrap 模型中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29571439/

相关文章:

javascript - 事件在replaceWith()后不会触发

javascript - jquery 插件 history.js 在 html4 浏览器中不能正常工作

jquery - 使用 jQuery Validate 插件确保至少选中三个复选框之一

javascript - 替换文件中的标记而不写入新文件

node.js - 在 NodeJS 服务器之间发送文件的最有效方式是什么?

node.js - 使用 mocha 进行 Node-Redis 异步测试

javascript - JavaScript 中的 "dot function"运算符

javascript - 如何在悬停时暂停幻灯片放映

javascript - 使用 $.get 后变量最终未定义

javascript - 为什么过渡在 margin-left 属性中不起作用