繁体   English   中英

在html隐藏输入中传递更新后的值

[英]Passing the updated value in html hidden input

我正在做一个有关在线考试的项目,管理员可以在其中添加测试,然后将其显示在div中。 在div内,它将显示所选测试的所有列表,因此,他可以通过单击十字符号来删除任何测试。 因此,我陷入了以下过程:如果要删除任何测试,然后提交表单,那么它将向我显示所有测试,包括已删除的测试。 下面是我的代码:

<?php  
    if(isset($_POST['addTest']))
    {  
        echo "<br>";
        echo "SELECTED TEST LIST";
        echo "<br>";
        echo '<div style="backfround:white;padding:5px;border:2px solid;overflow:scroll;height:100px;">';
        $fruitList = implode(', ', $_POST['jdb']);
        $jdStore = explode(',',$fruitList);
        $jdValueStore = ""; 

        for($i=0;$i<count($jdStore);$i++)
        {
            $testShowState = "select testId, testName from test where testId= '$jdStore[$i]'";
            $testShowQuery = mysql_query($testShowState);
            $testShowFetch = mysql_fetch_array($testShowQuery);

            echo  $jdValueStore[] =  "<div class='divClass'>

                                          <p>".$testShowFetch['testName']."</p>
                                          <img src='images/deletebttn.gif' alt='delete' class='deleteDiv' />
                                      </div>";
        }

        echo '</div>';
    } 

    $jdTotal = serialize($jdValueStore);
    $encoded = htmlentities($jdTotal);

?>
<input type="hidden" name="jdStoreValue" value="<?php echo $encoded; ?>">
<input type="submit" class="button add" value="Save" style="width:auto;" id="addSave" onclick="myAddSave()" name="myAddSave" >

在获取值的页面上:

$jdStoreValue = unserialize($_POST['jdStoreValue']);

for($i=0;$i<count($jdStoreValue);$i++)
{
    echo $jdStoreValue[$i];
}

它向我展示了所有测试。 我不想删除测试。

您应该删除序列化代码。

if(isset($_POST['addTest']))
{  
    echo "<br>";
    echo "SELECTED TEST LIST";
    echo "<br>";
    echo '<div style="backfround:white;padding:5px;border:2px solid;overflow:scroll;height:100px;">';
        $fruitList = implode(', ', $_POST['jdb']);
        $jdStore = explode(',',$fruitList);
        $jdValueStore = ""; 

        for($i=0;$i<count($jdStore);$i++)
        {      
            $testShowState = "select testId, testName from test where testId= '$jdStore[$i]'";
            $testShowQuery = mysql_query($testShowState);
            $testShowFetch = mysql_fetch_array($testShowQuery);
            echo '<input type="hidden" name="fruitList[]" value="'.$testShowFetch['testId'].'" />';
            echo  $jdValueStore[] =  "<div class='divClass'>

                <p>".$testShowFetch['testName']."</p>
                    <img src='images/deletebttn.gif' alt='delete' class='deleteDiv' />
                </div>";
         }

        echo '</div>';
} 
<input type="submit" class="button add" value="Save" style="width:auto;" id="addSave" onclick="myAddSave()" name="myAddSave" >

将jquery onclick事件绑定到交叉按钮,这将减少删除时的检查次数,同时也会更新隐藏字段。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM