-1

我很难理解这一点。我意识到 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 对象吗?

此单击确实有效并呈现一个空的选择框。

谢谢!

4

1 回答 1

1

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,然后您可以将其附加到任何您想要的位置。

于 2013-07-27T16:01:22.783 回答