使用php动态创建对象

Create objects dynamically with php

本文关键字:创建对象 动态 php 使用      更新时间:2023-09-26

我有一些对象的表单。如果是下拉框,当用户单击旁边的按钮时,上一个下拉框下会出现一个新的下拉框。用户选择一个项目,如果他愿意,再次单击按钮,会出现一个新的下拉框,他选择一个项,依此类推。这是我的下拉框和按钮的代码。我不知道怎么做这样的东西。

<td>
<?php
echo "<select name='"dropdown_docs_remove'" id='"dropdown_docs_remove'">";
    for ($i=0; $i<count($regulationsarr); $i++){
     echo "<option value='"$i+1'">$regulationsarr[$i]</option>'n";
    }
echo "</select>";
?>
 <INPUT TYPE=BUTTON NAME=btn_removedoc VALUE="+" ONCLICK="add_newdoc_to_remove()">
</td>

问题是您需要使用JavaScript在客户端执行此操作。

PHP在服务器上运行。早在浏览器呈现页面之前,您的代码就不再运行了。

我建议您学习使用jQuery。http://docs.jquery.com/Tutorials

此功能称为AJAX(异步JavaScript和XML)。

换句话说,它允许javascript。。脚本向服务器发出带有一些数据的请求(就像浏览器一样,这只是一个正常的请求),然后处理结果,只更新页面的一部分,而不刷新整个页面。

这不是一项简单的任务,还有很多事情需要考虑。如果您认为将来需要它并使用此方法,请花一些时间学习AJAX。jQuery是一个很棒的javascript库,具有完美的ajax支持,应该比学习普通的javascript容易得多。

只是一个提示,您可以使用jQuery发出POST(更安全)请求,如下所示:

$.post('/url/to/your/script.php', {'key1': 'value1', 'key2': 'value2'}, function(result) {
    // This function is called after the server responds, and result holds either RAW response (html or whatever), or you can parse it as JSON by supplying a fourth argument to $.post with value 'JSON'. Here is where you update your HTML page.
});

至于服务器端,一切都和正常请求一样,只是你不需要(也不应该)返回整个HTML页面,而只是一小部分——在你的情况下,是你需要插入的下拉框HTML。