在新窗口中显示ajax响应作为下拉列表

时间:2014-11-03 13:48:05

标签: javascript php ajax window.open

我有一个自动完成的文本框,用户可以在其中插入一个演员名称,并且工作正常。当用户插入演员姓名时,应填充动态下拉列表,其中包含该演员的电影列表,但不在同一页面中(我需要在新窗口中显示此下拉列表)

问题:

当用户插入演员姓名时,会打开一个新窗口,显示该演员的电影列表,但 问题是这些电影未显示在下拉列表中。

第二个问题是它打开了多个窗口(数字不固定,因为我尝试了不同的演员名称,例如一旦打开3个窗口,另外10个窗口,......)

如果有人帮我找到我的代码中的问题以及我应该在其中进行哪些更改,我感谢你们。

以下是我的尝试:

<script type="text/javascript">
$(document).ready(function () {
 $("#tags").autocomplete({
           source: "actorsauto.php",
           minLength: 2,
           select: function (event, ui){
                  $("#tags").on('autocompletechange change', function (){
                    var selectedVal = $(this).val(); //this will be your selected value from autocomplete
               // Here goes your ajax call.      
                    $.post("actions.php", {q: selectedVal}, function (response){
                        var win= window.open("target.html","_blank","height=200,width=400, status=yes,toolbar=no,menubar=no,location=no");
                        with(win.document)
                          {
                           open();
                           write(response);
                           close();
                          }
                       console.log(response);
                         $("#movieName").html(response).show();

                      });

                    }).change();
                 }
           }); 
 </script>

<html>
<body>
<input type="textbox" name= "tag" id="tags" style="display:none;" placeholder="Enter an actor/actress name here" />
<select id="movieName" name="movieName[]" multiple="multiple" width="200px" size="10px" style=display:none;>
<input type="button" value=">> Add to selected list >>" id="btnRight" style="display:none;" />
<select id="selectedItems" name="selectedItems[]" multiple="multiple" style="width:200px; size:10px;">
</select>
</select>
</body>
</html>

0 个答案:

没有答案