PHP的动态表单字段

时间:2012-10-27 22:36:56

标签: php html

我正在为以下问题寻找解决方案/最佳做法。

我有一个带有HTML表单的页面,其中包含一个下拉列表和一个提交按钮。在下拉框的下方是一个空白空间,我想根据下拉框中的选定值填充表单输入。我认为这可以在JavaScript中完成,但如果可能的话,我更喜欢PHP /客户端解决方案。

示例HTML:

<form name="initialdropdown" action="#" method="post">
    <select name="action">
    <option value="default">--select--</option>
    <option value="a">Option 1</option>
    <option value="b">Option 2</option>
    <option value="c">Option 3</option>
    <option value="d">Option 4</option>
    </select>
    <input type="submit" name="submit" value="submit"></input>
</form>

我已经探索过从表单操作中调用这个php脚本:

    <?php

    $getOption = $_POST['action'];
    $addUrl = $getOption.".php";

    include $addUrl;
    header("Location: htmlpage.php");

    ?>

然后创建几个不同的php文件(a.php,b.php,c.php等等。然后在每个文件中包含我想要回复的HTML表单包含在一个函数中,并包括在主要的HTML页面中运行。我觉得这是一个很好的方法,我感到很自在。任何人都可以了解最佳方法吗?

1 个答案:

答案 0 :(得分:1)

如果您希望在选择不同选项时在HTML表单上显示更新内容,JavaScript是自然的选择,因为您不必向服务器发出请求,这意味着移动数据并等待响应。当用户与页面交互时,JavaScript可以根据需要多次更改页面。

但是,如果您已准备好使用PHP生成要在该表单上显示的任何内容,则可以让PHP将显示信息输出到页面右侧的JavaScript中。然后JavaScript从PHP显示这些数据。或者,您可以使用对PHP的AJAX调用来请求每次选择不同选项时显示数据。

<强>更新

鉴于您的最新评论,您可以非常轻松地设置更多表单选项而无需使用PHP。在HTML中设置您可能想要显示的所有各种表单选项,但使用CSS隐藏可选部分。然后根据需要使用一点JavaScript显示每个部分。 jQuery可以让这更容易。