duanbamo0127 2016-10-19 06:38
浏览 36
已采纳

将按钮重定向到不同页面并保存而不是在同一页面中保存值

We are using below code to update the form fields in a database

<form action="profile.php" method="POST">

    Name : 
    <input type="text" name="txtuname" value="<?php echo $row['userName'] ?>" /><br/>
    Email :
    <input type="text" name="txtemail" value="<?php echo $row['userEmail'] ?>" />

    <input id="sub" type="submit" name="submit" value="Save" style="display:none" />
    <button class = "pedit" name="submit" onclick="work()">Edit</button>
</form>

script

<script>function work() 
    { 
    var see = document.getElementsByName("submit"); 
    for (i = 0; i < see.length; i++) 
    { 
      see[i].style.display = see[i].style.display === 'none' ? 'block' : 'none'; }}
</script>

both form fields, edit and save parts are displaying in only one page & using only same css.

enter image description here

  • 写回答

2条回答 默认 最新

  • dongpai2754 2016-10-19 07:10
    关注

    Perhaps the following, quickly written code, might help you change the appearance in the manner you are wishing.

    echo "
    <form>";
    
    for( $i=0; $i < 10; $i++ ){
        echo "
            <div class='record'>
                <output id='name$i' name='name'>Fred Bloggs $i</output><br />
                <output id='email$i' name='email'>fred.bloggs_$i@gmail.com</output><br />
                <input type='submit' value='Save' style='display:none'/>
                <input type='button' value='Edit' />
            </div>";
    }
    
    echo "
    </form>
    
    
    <script type='text/javascript'>
        var col=document.querySelectorAll('input[type=\"button\"]');
        if( col )for( var n in col )if( col[n] && col[n].nodeType==1 )col[n].onclick=function(e){
            var parent = this.parentNode;
    
            var fname  = parent.querySelectorAll('output[name=\"name\"]')[0];
            var femail = parent.querySelectorAll('output[name=\"email\"]')[0];
            var bttn = parent.querySelectorAll('input[type=\"submit\"]')[0];
    
            var vname  = fname.innerHTML;
            var vemail = femail.innerHTML;
    
            parent.removeChild(fname);
            parent.removeChild(femail);
    
            fname = document.createElement('input');
            fname.type='text';
            fname.name='name';
            fname.value=vname;
    
            femail = document.createElement('input');
            femail.type='text';
            femail.name='email';
            femail.value=vemail;
    
            parent.appendChild(fname);
            parent.appendChild(femail);
    
            this.style.display='none';
            bttn.style.display='block';
    
        }.bind( col[n] );
    </script>";
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 怎样才能让鼠标沿着线条的中心线轨迹移动
  • ¥60 用visual studio编写程序,利用间接平差求解水准网
  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?
  • ¥15 win10权限管理,限制普通用户使用删除功能
  • ¥15 minnio内存占用过大,内存没被回收(Windows环境)
  • ¥65 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?