如何解决此错误:不允许嵌套表单

时间:2016-07-08 21:20:53

标签: html forms

我在开源脚本中有这段代码:

<form id="thisform" method="post">
    <h2>{#Login#}</h2>
    <p class="right-text-al-rtl">{#Login_Have_Account#}</p>
    <form action="{$URL_login}" method="post">  
        <strong>{#Username#}/{#Email#}:</strong><br />
        <input autofocus="autofocus" type="text" name="username" class="form-control" value="{if isset($login_username)}{$login_username}{/if}" tabindex="1" /><br />

        <strong>{#Password#}:</strong><br />
        <input type="password" name="password" class="form-control" tabindex="2" /><br />
        <input type="hidden" name="processlogin" value="1"/>
        <input type="hidden" name="return" value="{if isset($get.return)}{$get.return}{/if}"/>
        <div class="login-submit">
            <input type="submit" value="{#LoginButton#}" class="btn btn-primary" tabindex="4" />
        </div>
        <div class="login-remember">
            <input type="checkbox" class="col-sm-offset-2" name="persistent" tabindex="3" /> {#Login_Remember#}
        </div>
    </form>
</form>

这个脚本的程序员使用了两种形式,一种在另一种内部。这是不正确的,但是如何修复此错误并更新我的开源脚本?

1 个答案:

答案 0 :(得分:0)

外部form代码没有提交按钮,因此基于此代码段可以安全地删除外部表单。为此,请删除<form id...行和最后一个</form>标记。

但是,请注意,因为表单带有id,所以有可能是CSS或Javascript以无法查看整个代码库无法预测的方式进行定位。最好的办法是删除它并测试它是否有任何回归。