Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JQuery-从原始HTML按ID访问子级_Jquery - Fatal编程技术网

JQuery-从原始HTML按ID访问子级

JQuery-从原始HTML按ID访问子级,jquery,Jquery,我是JQuery新手,所以这可能是一个愚蠢的问题,但是我还没有找到解决方案 我有一个原始HTML字符串存储为JS变量,如下所示。我想做的是将HTML字符串解析为DOM对象,并能够通过其id访问和更改div中的任何子对象 因此,在解析原始HTML之后,我需要通过id访问“ht”和“vt”。我将如何执行此操作 var htmlStr = "<div><span id='ht'>test 1</span><span id='vt'>test 2</

我是JQuery新手,所以这可能是一个愚蠢的问题,但是我还没有找到解决方案

我有一个原始HTML字符串存储为JS变量,如下所示。我想做的是将HTML字符串解析为DOM对象,并能够通过其id访问和更改div中的任何子对象

因此,在解析原始HTML之后,我需要通过id访问“ht”和“vt”。我将如何执行此操作

var htmlStr = "<div><span id='ht'>test 1</span><span id='vt'>test 2</span></div>";
$(htmlStr).ht // Something like this, that would return "test 1"
var htmlStr=“测试1测试2”;
$(htmlStr).ht//类似这样的内容,将返回“test1”
我基本上是尝试使用一些原始HTML作为模板来创建无序列表中的项目。我将使用模板创建新的列表项,然后用来自web服务的数据替换模板的某些部分

谢谢

试试这个:

$("#ht",htmlStr).html()
试试这个:

$("#ht",htmlStr).html()

以你的例子来说,你可以做到

var htmlStr = "<div><span id='ht'>test 1</span><span id='vt'>test 2</span></div>";
var htContent = $('#ht', htmlStr).text();

现在,
$htmlStr
是一个jQuery对象,您可以使用多种jQuery方法对其进行操作。

根据您的示例,您可以这样做

var htmlStr = "<div><span id='ht'>test 1</span><span id='vt'>test 2</span></div>";
var htContent = $('#ht', htmlStr).text();
var htmlStr = "<div><span id='ht'>test 1</span><span id='vt'>test 2</span></div>";
$(htmlStr).find('#ht').text();
现在,
$htmlStr
是一个jQuery对象,您可以使用多种jQuery方法对其进行操作;
var htmlStr = "<div><span id='ht'>test 1</span><span id='vt'>test 2</span></div>";
$(htmlStr).find('#ht').text();
$(htmlStr).find('#ht').text(); 应该这样做。

var htmlStr=“test 1test 2”;
$(htmlStr).find('#ht').text();

应该这样做。

$('#ht',htmlStr).text()应该替换为$(htmlStr).find('#ht')。由于jQuery在内部也会做同样的事情,所以它只是一个函数调用开销,可读性非常差。可读性是旁观者的眼中钉o) @jAndy:我不明白你的意思。我的数据库是如何遭受性能损失的?$('#ht',htmlStr).text()应替换为$(htmlStr).find('#ht')。由于jQuery在内部也会做同样的事情,所以它只是一个函数调用开销,可读性非常差。可读性是旁观者的眼中钉o) @jAndy:我不明白你的意思。我的设备如何遭受性能损失?