2011-06-10 64 views
0

如果我尝试:通键值对作为字符串JQuery的功能

$("#test_form").validate({ 
    rules : {'code':'required'}, 

它的工作原理。 如果我尝试:

var my_rules="{code : 'required'}"; 
$("#test_form").validate({ 
    rules : my_rules, 

不起作用。 我如何传递值? 谢谢。

+0

在传递一个对象的第一个例子,在第二字符串。如果该函数不接受一个字符串,那么它不能工作。问题是,你为什么要传递一个字符串? – 2011-06-10 10:44:31

回答

0

VAR my_rules =“{”代码“:‘所需的’}”;提供它的一个目的

var obj1 = new object; 
obj1.code="required"; 
+0

我尝试:var my_rules = new object; \t my_rules.code ='required'; \t \t \t $( “#test_form”)验证({ \t \t \t \t规则:my_rules,dowsn't工作 – 2011-06-10 10:50:11

+0

你有什么验证?为什么你需要为验证??你需要验证之前destringify。你需要做什么? – abhijit 2011-06-10 10:52:21

+0

我需要为许多页面编写javascript 1,但是我只检查了具有class required的输入,所以我使用jquery selector来接收元素列表,但现在我需要为验证。 – 2011-06-10 10:57:53

2

周围var my_rules="{code : 'required'}";取下报价,这样的:

var my_rules={code : 'required'};

因为否则你只是分配一个stringmy_rules,而不是一个object

+0

我可以删除引号,但我需要动态构造规则。为此我使用字符串。 – 2011-06-10 10:44:31

+0

@Lorenzo:您可以将属性动态地添加到对象。我建议阅读[使用对象](https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide/Working_with_Objects)。我很肯定你在这里不需要字符串。 – 2011-06-10 10:45:19

+0

Felix Kling你链接不起作用 – 2011-06-10 10:48:16