首页 > 解决方案 > 除了提交之外的其他方法

问题描述

我有一个 PHP 提交表单,在该表单中我有一个 PHP 图像库,可以显示文件夹中的图像。(我有一个下拉菜单可以从不同的文件夹中选择图像)。

当我单击图库中的图像时,该图像的路径会输入到输入字段中,以便在提交时可以链接到其他信息。

我的问题是当我从提交表单的下拉列表中选择不同的图片库文件夹时。我理解它为什么这样做,但不确定如何更改它使用 PHP 为 JS/JQ 选择不同文件夹的方式,因此无需提交或刷新。

这是相关的代码...

<script>
function change(){
    document.getElementById("myfolders").submit();
}
</script>


$subF = $_POST['otherFolders'];

<form id="myfolders" method="post">

  <select name="otherFolders" onchange="change()">
        <option selected="selected">Other Galleries</option>
        <?php
        $otherFolders = $dirs2;
        foreach($otherFolders as $item){
        ?>
        <option value="<?php echo $item; ?>"><?php echo $item; ?></option>
        <?php
        }
        ?>
    </select>

谢谢你的帮助

标签: javascriptphpjqueryajax

解决方案


我相信您不想在用户单击提交时刷新页面。该问题的信息非常有限,因此我无法对您的代码进行更改。但是,您要做的是通过使用preventDefault();JS 中的函数然后读取表单元素,向您的服务器 (PHP) 提交 aJax 请求,并使用服务器响应显示在页面上来阻止表单提交。

如果您不希望表单提交,您可以只制作一个不提交表单的按钮,而只需一个读取表单元素的 onClick 事件并执行与上述相同的操作。

如果没有阻止,表单提交将始终刷新页面。如果未提供 action 属性,则默认将表单提交到当前页面。


推荐阅读