如何将变量值赋给jquery?

时间:2011-09-10 15:21:05

标签: jquery

 var s="attr"
  var i=$(s)
  // jQuery(elem).attr(attr,eval("elm"+attr));
  jQuery(elem).$(s)(attr,eval("elm"+attr));//i tried this.

如何在上面的代码中指定一个变量名(代替s),这样我就需要在元素“elem”中添加一个属性。

2 个答案:

答案 0 :(得分:0)

快速搜索后,我发现这个现成的XML to JSON stylesheet看起来应该很适合你。

答案 1 :(得分:0)

JSON和XML并不真正兼容,因此您必须弄清楚如何在它们之间进行转换。例如,在XML中,您经常有几个与兄弟姐妹同名的元素(您可以拥有另一个<ROLL>)。在JSON中,您必须使用数组来表示它。但是如果你使用像“当多个兄弟元素在XML中具有相同的名称,它们形成一个JSON数组”这样的规则时,就不会得到一致的结果。许多元素将产生数组,一个将产生普通对象,零将不产生任何东西。

记住这样的警告,并使用LINQ to XML和JSON.NET,你可以这样做:

Function Process(element As XElement) As JObject
    Dim result = New JObject

    For Each attribute In element.Attributes()
        result.Add(attribute.Name.LocalName, attribute.Value)
    Next

    Dim elementGroups = element.Elements().GroupBy(Function(e) e.Name)

    For Each elementGroup In elementGroups
        If elementGroup.Count() = 1 Then
            result.Add(elementGroup.Key.LocalName, Process(elementGroup.Single()))
        Else
            Dim array = New JArray

            For Each child In elementGroup
                array.Add(Process(child))
            Next

            result.Add(elementGroup.Key.LocalName, array)
        End If
    Next

    Return result
End Function