Php 在单击时动态添加输入,但有一个while循环
我在表单中有一个while循环Php 在单击时动态添加输入,但有一个while循环,php,jquery,jquery-ui,dynamic,Php,Jquery,Jquery Ui,Dynamic,我在表单中有一个while循环 <?php <select> while($select = $sql->fetchObject()) { $name=$select->name; $alt = $select->alt; echo "<option value='".$alt."'>".$name."</option>";
<?php
<select>
while($select = $sql->fetchObject())
{
$name=$select->name;
$alt = $select->alt;
echo "<option value='".$alt."'>".$name."</option>";
}
</select>
?>
<div id='new_name'>Add Name</div>
我想了解一些如何使用jquery动态添加一个新的选择选项,该选项与单击时while循环中的相同选项,如果有php,我将如何做这样的事情
非常感谢 PHP代码在服务器端运行,而jQuery是JavaScript,因此在客户端运行,因此PHP代码不会影响jQuery。从服务器返回的只是一个纯HTML元素。因此,您可以使用jQuery创建select的副本
$('select').clone().appendTo('form');
由于您没有指定要单击什么来添加复制的select,因此我仅举一个示例说明它的外观:
$("#my-id-to-click-on").click(function(){
$('select').clone().appendTo('form');
});
注意,由于我对表单和输入中使用的类或ID一无所知,这些示例使用非常通用的选择器,如果DOM中有多个表单或多个选择器,这将成为一个问题。我建议您将ID或类添加到表单和选择中,并使用它们来选择。那样的话,它将更加防弹
您可能还需要添加if语句,以确保仅在第一次单击时复制select。如果您希望它是这样运行的。PHP代码在服务器端运行,而jQuery是JavaScript,因此在客户端运行,因此PHP代码不会影响jQuery。从服务器返回的只是一个纯HTML元素。因此,您可以使用jQuery创建select的副本
$('select').clone().appendTo('form');
由于您没有指定要单击什么来添加复制的select,因此我仅举一个示例说明它的外观:
$("#my-id-to-click-on").click(function(){
$('select').clone().appendTo('form');
});
注意,由于我对表单和输入中使用的类或ID一无所知,这些示例使用非常通用的选择器,如果DOM中有多个表单或多个选择器,这将成为一个问题。我建议您将ID或类添加到表单和选择中,并使用它们来选择。那样的话,它将更加防弹
您可能还需要添加if语句,以确保仅在第一次单击时复制select。如果这是您希望它的行为方式。您还可以:
使用PHP生成选择,禁用并隐藏它们,然后单击启用并显示。
使用PHP和json_encode为所有数据名alt对设置一个javascript变量,然后单击use the variable contents以使用javascript生成HTML选择。
您还可以:
使用PHP生成选择,禁用并隐藏它们,然后单击启用并显示。
使用PHP和json_encode为所有数据名alt对设置一个javascript变量,然后单击use the variable contents以使用javascript生成HTML选择。
PHP是在服务器端完成的,Javascript是在客户端完成的,所以请包含生成的HTML而不是PHP代码。PHP是在服务器端完成的,Javascript是在客户端完成的,所以请包含生成的HTML而不是PHP代码。感谢您的输入,我实际上使用克隆来获取表单,但问题是,您所说的ID和类。也许我必须用数组进行某种服务器端php编码,并进行一些内爆和爆炸,然后将其发送到我的数据库中。@andrewliu我不确定我是否理解你的意思。您想在db中存储什么?假设下拉列表将填充名称,如果我想添加另一个名称,我会单击add name(添加名称),这将克隆下拉菜单以添加另一个名称。基本上,我希望能够将每个名称保存为数据库中的不同行,这样每个名称都有一个ID,数据库会自动递增。我想不需要内爆和爆炸。但我只是说,因为我仍然可以做无限的可能性,对吗?还有,可能有问题。克隆,有可能删除某个克隆元素吗?谢谢你的输入,我使用克隆来获取我的表单,但问题是,你所说的ID和类。也许我必须用数组进行某种服务器端php编码,并进行一些内爆和爆炸,然后将其发送到我的数据库中。@andrewliu我不确定我是否理解你的意思。您想在db中存储什么?假设下拉列表将填充名称,如果我想添加另一个名称,我会单击add name(添加名称),这将克隆下拉菜单以添加另一个名称。基本上,我希望能够将每个名称保存为数据库中的不同行,这样每个名称都有一个ID,数据库会自动递增。我想不需要内爆和爆炸。但我只是说,因为我可以做无限的可能性,对吗?还有,克隆可能有问题。克隆,有可能删除某个克隆元素吗?