将Javascript对象转换为jquery对象?

时间:2011-09-05 10:00:39

标签: javascript jquery

当iam尝试将javascript对象转换为jquery对象时,如obj = $(obj)。对象obj正在丢失其中一个属性值并将值设置为true。如果我使用obj [0]。验证它返回的确切值。请在此建议。

obj = $(obj);
objValue = obj.attr("Validate");

1 个答案:

答案 0 :(得分:3)

查看你的代码,你基本上有一个对象数组,因为你提到了能够这样做:

obj[0].Validate

这意味着当你将对象转换为jQuery对象时,你仍然在处理一个对象数组。

简单地执行obj.attr('Validate')会很快,因为你还没有访问阵列中的单个对象。

请考虑以下事项:

var x = {obj1 : {Validate: true, SomethingElse: false, AnotherProperty: true}};
var jQx = $(x);

var jQxFirst = $(jQx.attr('obj1'));

在这里我们可以看到我有一个对象集合。为了检查我的Validate属性,我需要访问对象集合中的单个项目。

现在可以使用:

console.log(jQxFirst.attr('Validate'));
console.log(jQxFirst.attr('SomethingElse'));
console.log(jQxFirst.attr('AnotherProperty'))

以下是一个有效的例子:http://jsfiddle.net/48LWc/

使用更熟悉的符号表示我们如何处理数组的另一个例子:

http://jsfiddle.net/48LWc/1/

var objCollection = new Array();
objCollection[0] = {Validate: true, SomethingElse: false, AnotherProperty: true};

var jQx = $(objCollection);

var jQxFirst = $(jQx[0]);