带有#id的jQuery load()不适用于TEXTAREA

Posted

技术标签:

【中文标题】带有#id的jQuery load()不适用于TEXTAREA【英文标题】:jQuery load() with #id not working for TEXTAREA 【发布时间】:2015-11-02 10:23:19 【问题描述】:

http://www.w3schools.com/jquery/jQuery_ajax_load.asp

index.html:

<textarea id="#my-textarea"></textarea>

script.js:

$("#my-textarea").load("db.txt");工作

$("#my-textarea").load("db.txt #some-data"); 不工作

$("#my-textarea").load("db.html");工作

$("#my-textarea").load("db.html #some-data"); 不工作

db.txt:

<p id="some-data">Some Data</p>Some Outside Data

jQuery 1.11.3

我做错了什么?

【问题讨论】:

可以显示db.txt的内容吗? #some-data 应该是db.txt 中元素的id db.txt:

一些数据

一些外部数据
【参考方案1】:

这是一个 plunkr 链接Plnkr

<body>
<h1>Hello Plunker!</h1>
<div id="block">here: </div>

<script>$("#block").load("db.html #some-data");</script>`

我所要做的就是将标签放在标签的末尾,我不知道它为什么会这样。但这可能是因为它在检查#block id之前加载了内容你的html。

【讨论】:

谢谢你的例子。我需要这个来加载到 textarea 并且这不适用于这个标签。【参考方案2】:

可能是因为 textarea 在 jQuery 或/和 javascript 代码深处的某个地方无法操作,但如果您像这样将外部文件包装在 div 中,它会起作用:

<div>
    <p id="some-data">Some data</p>
    <p id="another-some-data">Another some data</p>
    Some unwanted data
</div>

并使用这个 jQuery 代码:

$.get('db.txt', function(data) 
data = $(data);
    $("#my-textarea").html($('#some-data', data).html());
);

【讨论】:

以上是关于带有#id的jQuery load()不适用于TEXTAREA的主要内容,如果未能解决你的问题,请参考以下文章

JS 脚本不适用于使用 jQuery 的 .load() 加载的 div

外部 js 脚本不适用于使用 jQuery 加载的页面

带有 phonegap 的 Jquery mobile 不适用于移动应用程序

jQuery 加载不适用于某些 .txt 文件

带有 Jquery 库 [依赖性] 3.1.0 的 JQuery 组织结构图正在工作,但不适用于 1.11.1 版本

jQuery .click 不适用于 jQuery 生成的按钮 [重复]