除了提交以外的其他方法

时间:2018-07-11 17:31:37

标签: javascript php jquery ajax

我有一个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>

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

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

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

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