1

下面是我的代码,通过隐藏或使下面的表格行可见,它可以完美地工作。我遇到的问题是,当我验证我的表单并提交表单时,可见的表格行隐藏起来。选中复选框时,它应该保持可见。该复选框仍处于选中状态,但是,表格行隐藏了。

我还想提一下,即使表格隐藏了,在选中复选框后,它也会保留所有表单字段,没有任何丢失,问题是表格隐藏了。有任何想法吗??

任何想法为什么会这样?

<style>
<!--
.hidden 
{
display: none;
}
.visible 
{
}
</style>

<script type="text/javascript">
<!--
var last = "";
function show(div)
{
    if (last)
    {
        document.getElementById(last).className = "hidden";
    }   
    if (div && document.getElementById(div))
    {
        document.getElementById(div).className = "visible";
        last = div;
    }
}
</javascript>

<input name="showme" value="yesshowme" type="checkbox" onClick="show(this.value);">

<tr id="yesshowme" class="hidden">
blablablablalbla
</tr>

<submit name="submit" value="submit">
4

1 回答 1

0

当您单击提交时,表单会自行发布,并且由于您没有提供表单的标记,我的假设是它会发布自己。鉴于这些信息,您的页面可能会在进行任何更改之前恢复到其原始状态。如果您希望保留所做的更改,则需要从您将这些更改发布到的任何数据源加载它们,或者通过使用会话或 cookie 来保持它们的状态。如果您通过 ajax 进行更改,您只需要添加onclick="myAjaxCall();return false;"到您的提交按钮。

于 2013-02-28T14:26:31.380 回答