【问题标题】:Show different form when clicking on different link单击不同的链接时显示不同的表单
【发布时间】:2014-06-07 16:36:53
【问题描述】:

我有一个这样的 Drupal html:

<div class="field field-name-js-link field-type-ds field-label-hidden">
    <div class="field-items">
        <div class="field-item even">Enlace Responder</div>
    </div>
</div>
<div id="comments" class="comment-wrapper">
    <form class="comment-form ds-1col " action="/drupal7/felgtb-vih/httpdocs/comment/reply/39" method="post" **id="comment-form"** accept-charset="UTF-8" style="display: block;"><div><div class="ds-1col ds-form clearfix">

    </form>
</div>
<div class="field field-name-js-link field-type-ds field-label-hidden">
    <div class="field-items">
        <div class="field-item even">Enlace Responder</div>
</div>
</div>
<div id="comments" class="comment-wrapper">
    <form class="comment-form ds-1col " action="/drupal7/felgtb-vih/httpdocs/comment/reply/39" method="post" id="comment-form--2" accept-charset="UTF-8" style="display: block;"><div><div class="ds-1col ds-form clearfix">

    </form>
</div>
<div class="field field-name-js-link field-type-ds field-label-hidden">
    <div class="field-items">
        <div class="field-item even">Enlace Responder</div>
    </div>
</div>
<div id="comments" class="comment-wrapper">
    <form class="comment-form ds-1col " action="/drupal7/felgtb-vih/httpdocs/comment/reply/39" method="post" id="comment-form--3" accept-charset="UTF-8" style="display: block;"><div><div class="ds-1col ds-form clearfix">

    </form>
</div>

我需要当我用class="field-name-js-link"点击&lt;div&gt;时,页面会显示一个与这个&lt;div&gt;相关的表单(下面出现的表单)。 例如,如果我用class="field-name-js-link"点击第一个&lt;div&gt;,它必须显示第一个“表单”;如果我用class="field-name-js-link"点击第二个&lt;div&gt;,它必须显示第二个“表单”,等等。

所有这些都使用 javascript 或 jquery。

谢谢!

【问题讨论】:

    标签: javascript jquery html forms drupal


    【解决方案1】:

    这将使评论字段在您第一次点击时可见,以后再切换。

    $(function () {
        $(".field-name-js-link").click(function () {
            var visible = $(this).next(".comment-wrapper").is(":visible");
            $(".comment-wrapper").hide(); // hide all the other forms
            $(this).next(".comment-wrapper").toggle(!visible); // toggle the form below this
        });
    });
    

    DEMO

    【讨论】:

    • 现在,当我再次单击带有 class="field-name-js-link" 的
      时,我想隐藏。我尝试使用布尔变量,但它根本不起作用。这样,我必须点击两次才能得到答案。
    • 是的,但问题是一样的。 div 仅在我第二次单击时才显示表单。
    • 太棒了!非常感谢你,机器 Barmar:D
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签