11

是否有任何替代解决方案(在 JavaScript 中)document.getElementById();来选择特定元素,同时指定 class 和 id ?

例如我有这样一个内容:

<a class="q_href" onclick="showQuestion(1)">Question 1:</a>
<div class="q_content" id="1"></div>

<a class="q_href" onclick="showQuestion(2)">Question 2:</a>
<div class="q_content" id="2"></div>

而我想在函数中的“问题X”链接下选择对应的div

function showQuestion(id)
{
var thediv = GetByClassAndId("q_content",id); // how to implement this function ?
WriteQuestionIn(thediv); //Ajax
}

提前致谢。

4

3 回答 3

9

你可以试试document.querySelector()

喜欢document.querySelector(".q_content#2")使用 para like css 选择器..

于 2013-03-02T03:03:12.110 回答
6

由于 ID 始终是唯一的(除非您犯了错误),您无需同时使用 class 和 id 来选择元素。
这种方法是不正确的,应该不惜一切代价避免

我怀疑是你的问题,身份证只是一个数字。尝试添加一个字母前缀。请查看此页面的源代码以查看示例。

<a class="q_href" onclick="showQuestion(1)">Question 1:</a>
<div class="q_content" id="q1"></div>

<a class="q_href" onclick="showQuestion(2)">Question 2:</a>
<div class="q_content" id="q2"></div>

function showQuestion(id)
{
var thediv = document.getElementById("q"+id);
WriteQuestionIn(thediv); //Ajax
}
于 2013-03-02T03:00:21.960 回答
-1

实际上$jQuery 中有一个函数可以执行此操作。如果您使用任何框架,那么您应该记住总有一个可用的 jQuery 库。否则,如果您使用自定义 PHP,则添加其中之一,如 jQuery 或其他,因为它们提供了许多类型的选择器。

现在这里是添加 jQuery 后的代码:

$("#yourid") //basic selector
$("#yourid.yourclass").show()

用于.show()显示选中的元素

使用.hide()隐藏元素

于 2013-03-02T04:03:58.700 回答