在其他元素的基础上隐藏/取消隐藏jsp元素

时间:2016-03-25 08:55:43

标签: javascript jsp show-hide

我希望在其他元素的基础上隐藏一个元素。

<table class="entry" >
    <tr>
        <th><s:text name="security.user.label.authentication-type" /></th>
        <td><s:select 
            name="currentUser.authImpl"
            onchange="DMAINC.module.security.User.removeExpirePassword('%{tabId}');"
            list="@com.dmainc.web.common.security.AuthenticationType@values()"
            headerKey=""
            headerValue="[Please Select]"
            listKey="classname"
            id="authImpl_%{tabId}" /></td>
    </tr>
    <tr id="expireOnLogin" >
        <th><s:text name="security.user.label.expire-password" /></th>
        <td><s:checkbox id="expireOnLog" name="expireOnLogin"/></td>
    </tr>
</table>

我的实施方式如下:

DMAINC.module.security.User.removeExpirePassword = function(tabId)
{
    var auth = document.getElementById("authImpl_" + tabId).value;
    if(auth=="com.dmainc.commons.security.service.jaas.JAASAuthenticator"){
        var doc = document.getElementById("expireOnLogin");
        doc.style.display = "none";
    }
    else{
        alert(2);
        var doc = document.getElementById("expireOnLogin");
        doc.style.display = "";
    }
};

它工作正常,但是当身份验证类型值来自db时它不会隐藏复选框,只有当我使用select更改时它才起作用,我想隐藏两个场景中的复选框,首先如果值是select来自db如果我从UI更改我也尝试使用if语句来隐藏但是当我更改select时它没有找到expireOnLogin id。

1 个答案:

答案 0 :(得分:0)

如果您点击编辑内容,则会给出示例... Lore ...已消失并且textarea显示

&#13;
&#13;
<script> 
                function showStuff(id, text, btn) {
                    document.getElementById(id).style.display = 'block';
                    // hide the lorem ipsum text
                    document.getElementById(text).style.display = 'none';
                    // hide the link
                    btn.style.display = 'none';
                }
            </script>
&#13;
&#13;
&#13;

&#13;
&#13;
            <td class="post">

                <a href="#" onclick="showStuff('answer1', 'text1', this);
        return false;">Edit</a>
                <span id="answer1" style="display: none;">
                    <textarea rows="10" cols="115"></textarea>
                </span>

                <span id="text1">Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum</span>
          </td>
&#13;
&#13;
&#13;