我的基础环境是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/