javascript - 如何在 jQuery 中使用包含 '#' 的 ID 选择器?

标签 javascript jquery

<div id="content">
<textarea id="#example-1">
</textarea>
<textarea id="#example-2">
</textarea>
</div>

和 Jquery

var xyz = $("content##example-1").val();

这段代码对我不起作用。它崩溃 - 显示未定义。当我从文本区域的 div 中删除“#”并从 JS 代码中删除一个“#”时,它就起作用了。它需要与带有“#”的 id 一起使用。 我可以将变量放入 $() 引号后吗?例如:

$("content#"variable)

最佳答案

Escape the special character in the ID ,然后删除该 content 部分。因为element IDs must be unique ,ID 选择器最多匹配一个元素。因此,超出此范围的任何内容都被过度指定。

var xyz = $("#\\#example-1").val();

更好的是,不要在 ID 中使用特殊字符:

<div id="content">
    <textarea id="example-1">
    </textarea>
    <textarea id="example-2">
    </textarea>
</div>
var xyz = $('#example-1').val();
<小时/>

how about $("content#"variable)? Is it possible? Is it exist any possibility to deal with it?

这不是有效的 JavaScript;你需要使用字符串连接。此外,选择器 'content' 会匹配标记名称为 content 的元素,这不是您想要的。相信我:只需完全删除 content 部分即可。

然后使用我链接的 jQuery FAQ 中描述的 jq 函数。

var xyz = $(jq(variable)).val();

关于javascript - 如何在 jQuery 中使用包含 '#' 的 ID 选择器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9676704/

相关文章:

jquery - 使用 jQuery(或其他)劫持 ASP.NET MVC 上的表单提交

Javascript Await if语句中的保留关键字错误

javascript - Tabris.js Facebook 和 Twitter 登录

javascript - 为什么 AngularJS View 不能将数据发送到这个可重用的服务?

javascript - 使用 JavaScript 提取标题的同源策略

javascript - 如何使用图像自定义 slider 处理程序

javascript - 我的代码有什么问题? (第二个(点击)功能不起作用)

javascript - querySelectorAll 获取下拉列表的选定值

Javascript 倒计时与用户输入

javascript - 使用变换 : scale 滚动振动屏幕