php - <form> 标签在用 php 创建时不显示

标签 php javascript html forms

我有这个代码:

$html .='<form enctype="multipart/form-data" action="upload.php" method="POST">
    <input type="hidden" id="input_clone_id" name="input_clone_id" value="'.$row['id'].'"/>
    <input type="hidden" id="input_clone_var" name="input_clone_var" value="V"/>
    <input type="file" name="uploaded_files[]" id="input_clone" multiple="multiple" /><br />
    <input type="submit" style="margin-left:0;float:left" value="Upload Files" />
</form>';
$html .='<a href="#" onclick="$.ajax({type: \'POST\',url: \'delete_pic.php\',data:{id:\''.$row['id_vila'].'\',var:\'V\',val:\''.$val.'\'},cache: false});window.location.reload( true );" style="background:url(\'images/icons/delete.png\') 50% -19px no-repeat;width:16px;height:16px;float:left;margin-left:10px;margin-top: 6px;"></a>';

<form> 外,所有内容均已正确创建标签。它没有显示。 我在这里做错了什么?

谢谢

编辑:

function formatImage2($col,$val,$row)
    {
        $html = '';
        $new = explode( ';', $val );

        for($j = 0; $j < count($new)-1; $j++) 
        {
            $html .= '<a target="_blank" href="../images/gallery/'.$new[$j].'"><img style="border: none;" src="../images/gallery/'.$new[$j].'" alt="'.$new[$j].'" width="100" /></a>';
        }
        $html .='<form enctype="multipart/form-data" action="upload.php" method="POST">
                        <input type="hidden" id="input_clone_id" name="input_clone_id" value="'.$row['id'].'"/>
                        <input type="hidden" id="input_clone_var" name="input_clone_var" value="V"/>
                        <input type="file" name="uploaded_files[]" id="input_clone" multiple="multiple" /><br />
                        <input type="submit" style="margin-left:0;float:left" value="Upload Files" />
                </form>';
        $html .='<a href="#" onclick="$.ajax({type: \'POST\',url: \'delete_pic.php\',data:{id:\''.$row['id_vila'].'\',var:\'V\',val:\''.$val.'\'},cache: false});window.location.reload( true );" style="background:url(\'images/icons/delete.png\') 50% -19px no-repeat;width:16px;height:16px;float:left;margin-left:10px;margin-top: 6px;"></a>';

        return $html;
    }

我正在使用它来格式化数据库中的图片。

输出:

<td>
                        <input type="hidden" id="input_clone_id" name="input_clone_id" value="9">
                        <input type="hidden" id="input_clone_var" name="input_clone_var" value="V">
                        <input type="file" name="uploaded_files[]" id="input_clone" multiple="multiple"><br>
                        <input type="submit" style="margin-left:0;float:left" value="Upload Files">

                <a href="#" onclick="$.ajax({type: 'POST',url: 'delete_pic.php',data:{id:'9',var:'V',val:''},cache: false});window.location.reload( true );" style="background:url('images/icons/delete.png') 50% -19px no-repeat;width:16px;height:16px;float:left;margin-left:10px;margin-top: 6px;"></a></td>

最佳答案

这是由于将一种形式嵌套在另一种形式中造成的。不会呈现内部表单标记,但会呈现该表单内的任何 html。

您必须在外部 HTML 中使用某种形式将此包装起来。

<form id="outsideForm">
    <form id="insideForm">    
        <div>Inside Content</div>
    </form>
</form>

内部表单元素消失了—— Demo

我在 3 小时前发布了这个信息,但它被否决/删除了,因为它是一个问题的形式。我会把信息作为评论发布,但我没有这样做的声誉。更好的解决方案可能是编辑我的答案,而不是完全删除它。

关于php - <form> 标签在用 php 创建时不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16243034/

相关文章:

javascript - 如何使用Jquery在div中加载页面时显示进度条

javascript - 在函数内对 NodeJS Promise 进行单元测试

html - 使内容 div 填充剩余高度

jquery - 网站导航 - 向下滑动页面内容 - 类似于示例站点 'pavilionvenue.co.uk' 但水平

javascript - 网站页面上的随机横幅定位。可能的?

javascript - 提交表单后显示确认模式对话框

php - 带有 echo 的窗口背景图像显示

php - 如果语句 php?

javascript - 禁用所有依赖于阵列的选择选项

javascript - 使用 jQuery 代替 document.getElement