PHP/jQuery-将选择菜单附加到DOM对象


PHP/jQuery - Appending select menu to DOM object

我很难理解这一点。我意识到PHP是基于服务器端的,jQuery是客户端的。所以问题在于如何在调用时构建PHP,所以当调用jQuery操作时就可以开始了(我认为)。

我有一个应用程序,我点击一个日历日,选择框呈现选项。

这是我的jQuery调用:

 <script>
    var count = 0;
    $(".addRow").click(function(){
        var selector = $(this).data('num');
        count++;
        $("#tday_"+selector).append('<br/><br/><span>Additional Food choice: </span><select name='+selector+'>');
    });
  </script>

问题是-如何获得选择框的选项?有没有可能呈现一个选择框,我可以在该附加中从PHP中检索它?如果可以的话,是否可以从PHP附加到DOM对象?

此单击不起作用,并呈现一个空的选择框。

谢谢!

AJAX就是答案

使用PHP 的jQuery Ajax POST示例

另请看上面的例子。

您需要使用jquery向您的.php文件发送一个请求,您的php文件应该是echo您的select menu

在您的jQuery中,

<script>
    var count = 0;
    $(".addRow").click(function(){
        var selector = $(this).data('num');
        count++;
        $.post(url, { selector:selector }, function(data){
            $("#tday_"+selector).append('<br/><br/><span>
                             Additional Food choice: </span>'+data);
        //data is whatever php file returned.           
        });
    });
  </script>

我的意思是,无论你的选择是什么,你都需要在你的.php文件中做以下操作

$selector = $_POST['selector'];  //variables from jquery.
    //Get your options using mysql.
echo "<select name='".$selector."'>
     <option value='".$option1."'>Option1</option>
     <option value='".$option2."'>Option2</option>
     <option value='".$option3."'>Option3</option>
     </select>";

将option1,2,3替换为您从mysql调用中获得的选项。

这将返回到jQuery,然后您可以将其附加到任何需要的位置。