1

我希望这很简单,但是在进行了很多谷歌搜索并尝试了选择器、find()、content()、text() 等之后,我并没有完全做到这一点。任何帮助,将不胜感激。

我在网页中有一些自定义标记。

<div id="myGrid">
    <url>www.google.com</url>
    <columns>
        <column>ID</column>
        <column>Position</column>
        <column>FirstName</column>
        <column>LastName</column>
    </columns>
</div>

我需要将文本选择<url>到变量中。我还需要将<columns>'s 的集合放入一个变量(数组/集合)中。

标签名称将是标识符,即我不能使用 ID 或 CLASS 来查找这些元素。

似乎它应该是可行的,但到目前为止我的尝试都是失败的......非常感谢任何帮助。

谢谢!

4

4 回答 4

2

我将为您提供有关 url 的帮助,因为它非常基本。这应该可以帮助您处理这些列。

Jquery 将选择您提供的任何元素。您可以使用任何元素名称。在这里查看jsfiddle

如果你担心 IE 问题,使用document.createElement('url')which 会告诉 IE url 是文档的一个元素

document.createElement('url');  //crutch for IE

$(document).ready(function() {
    alert($('url').html());  
})​
于 2012-07-16T15:07:17.430 回答
1
var $t = {}
var i = 0;   

$('#myGrid').find('column').each(function(){

    $t[i] = $(this).text();
    i++;

});

alert($('#myGrid url').text());
alert($t.toSource());
于 2012-07-16T15:10:13.037 回答
0
var url = $("url").html();
var columns = $.makeArray($("column").find("columns").html());

虽然我没有测试以上,更好的方法是使用 jQuery 'each' 函数:

var a = Array();
$('#myGrid').find('column').each(function(){
    a.push($(this).html());
});

并测试:alert(a[2]);其中数字是数组编号。

其中 url 是您的 url(duh),而 columns 是您的列数组。如果只有一个,或者如果您在函数中使用它,这将非常有用,在这种情况下,我会将选择器更改为$("url", this).html();

于 2012-07-16T15:07:06.713 回答
0

这个怎么样(jsbin版本http://jsbin.com/ucivav)?

var url = $("#myGrid url").text();
var $cols = $("#myGrid columns column");
alert(url);
alert($cols.first().text());
于 2012-07-16T15:07:24.207 回答