2012-02-24 27 views
0

我在屏幕上有多个选项卡,每个选项卡都有自己完全相同的动态生成表单。每个表单都有自己的唯一ID,表单中的每个字段都有一个通用唯一的ID。happy.js json配置中的动态字段名称

我的问题属于动态使用happy.js(jquery插件)。 happy.js配置使用json将字段名称和处理设置为对象。

我试图完成类似以下内容:

$('#capture'+tabname).isHappy({ 
    fields: { 
     '#first'+tabname: { 
      required: true, 
      message: 'Please tell us your full name.' 
     }, 
    } 
}) 

的“#第一个”​​ + tabname是什么原因造成了我的问题。有没有办法在那里使用动态字符串?

回答

1

是的。你只是传递一个对象文本isHappy,因此而不是就地创建它,事先创建并使用[]语法创建动态密钥:

var tabFields = {}; 

tabFields[ '#first' + tabname ] = { 
    required : true, 
    message : 'Please tell us your full name.' 
}; 

$('#capture' + tabname).isHappy({ fields : tabFields }); 
+0

我欣赏的响应,但遗憾的是它不似乎工作。 – Jason 2012-02-24 18:24:46

+0

除非你告诉我们,否则我无法帮助你。*它如何不工作。你在控制台中遇到错误吗?是你的选择器('$(...)')返回你认为应该的元素吗?按照您期望的方式发布代码[jsFiddle](http://jsfiddle.net/)也会非常有帮助。 – 2012-02-24 18:46:27

+0

没关系。我愚蠢地复制示例代码,并期望它与我的实际代码一起工作:) – Jason 2012-02-24 18:50:55