【发布时间】:2013-06-27 12:56:31
【问题描述】:
我正在寻找解决方案的时间并找到了一些答案,但不是很合适。
我有几个 <span id="same-id-for-all-spans"></span> 元素,每个元素都包括一个 <img> 元素。
现在我想创建一个打印模板,只打印那些添加了特定 class 的元素。
问题是,如何通过点击将一个类添加到一个跨度中。 这样,我想“标记”几个跨度,然后这些跨度具有基础的 print-css 样式,以仅打印具有特定 *class* 的跨度。 重要提示:单个跨度应该可以单击(添加类)和重新单击(删除类)。
非常感谢。 最好的祝福 迷宫
它是所有 span 的 wordpress 返回,所以 id 相同。 目前我已经包含了这个js:
<script type="text/javascript">
function changeid ()
{
var e = document.getElementById("nonprintable");
e.id = "printable";
}
</script>
wordpress 代码如下所示:
<?php
$args = array('post_type' => 'attachment', 'post_parent' => $post->ID, 'orderby' => 'menu_order', 'order' => 'ASC');
$attachments = get_children($args);
foreach ( $attachments as $attachment_id => $attachment ) {
echo '<span id="nonprintable" onClick="changeid()" >';
echo wp_get_attachment_image( $attachment->ID, 'large' );
echo '</span>';
}
?>
现在,当我单击一个跨度时,我看到它更改了 id。但它只是在每次点击跨度而不是在我点击的特定跨度上时从上到下改变它。
【问题讨论】:
-
你能展示你的代码吗?
-
有什么理由让所有跨度的 id 都相同?
-
你不能编辑他的PHP代码,它为span分配一个唯一的ID吗?您是否正在考虑在页面呈现后设置 ID?无论您要实现什么目标,我都认为这不是一个好主意
-
如上所述,我想在之后将类添加到跨度中,以便在打印模板中,类名决定显示哪些图像,哪些不显示。如果你有任何其他建议,我很高兴:)
-
我想我不需要“id”。我只需要打印模板的“类”。我只想更改跨度的样式,而不是“id”。所以当我点击一个时,我希望它有一个边框。 有人可以帮我吗?
标签: javascript jquery class onclick html