javascript - 替代 eval() 以使用 LiveValidation 构造函数

标签 javascript jquery eval

我正在为输入元素使用 LiveValidation。它们出现在通过 AJAX 调用检索的表中,可以是 4 的倍数,介于 4 和 36 之间。

我正在使用 eval 调用 LiveValidation 的构造函数,因为每次 AJAX 调用后输入元素的数量可能会有所不同,我想不出其他方法(我没有太多 JavaScript 经验)。

我正在使用这个:

$("input[type=text]", tableElement).each(function(index) {
    eval("var temp_" + index + " = new LiveValidation(this, { wait: 0, validMessage: ' ' });");
    eval("temp_" + index + ".add(Validate.Numericality, { onlyInteger: true });");
    eval("temp_" + index + ".add(Validate.Presence, { failureMessage: 'Cannot be blank' });");
});

在不使用 eval 的情况下实现相同目标的更好方法是什么,因为我知道应该非常谨慎地使用它。

最佳答案

好吧,看来我只能用这个了:

$("input[type=text]", tableElement).each(function(index) {
    var temp = new LiveValidation(this, { wait: 0, validMessage: ' ' });
    temp.add(Validate.Numericality, { onlyInteger: true });
    temp.add(Validate.Presence, { failureMessage: 'Cannot be blank' });
});

我认为那行不通,但它确实行得通。

关于javascript - 替代 eval() 以使用 LiveValidation 构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1913949/

相关文章:

arrays - Linux 控制台中的 MongoDB 命令带有 --eval (print

javascript - 使用 Async/Await 和 Puppeteer 映射数组以返回结果

javascript - 与从 Famo.us 中的 AJAX 调用获取值(value)相关的问题

javascript - 由于包装器 DIV,滚动事件永远不会触发并且 .scrollTop() 总是返回 0

javascript - JSON从js到MVC Controller

javascript - 下拉菜单和状态选择的 JS 问题

javascript - 按下任意键时发出警报

jquery - 如何在函数内使用 jQuery 去除 html

bash - 带参数和 eval 的条件构造

c# - 如何在asp.net中删除Eval中的小数点