使用PHP和AJAX更新选择下拉选项

时间:2016-04-12 21:26:37

标签: javascript php jquery ajax

我在HTML上使用select标记创建了一个下拉列表。 我在PHP上有值,这是代码:

proveedordinamico.php

<?php
require "config.php";
$distinct1 = "SELECT DISTINCT proveedor FROM techno_articulos";
$distinctquery1 = mysql_query($distinct1,$enlace);
while ($fila1 = mysql_fetch_array($distinctquery1)) {
echo '<option>' . $fila1['proveedor'] . '</option>';
}
?>

的index.php

<script src="https://code.jquery.com/jquery-1.12.3.min.js"></script>
    <div id="billdesc">
    <select id="test" class="form-control">
      <option class="non" value="option1">Option1</option>
      <option class="non" value="option2">Option2</option>
        <div id="actualizarlistaproveedores"></div>
      <option class="editable" value="other">Other</option>
    </select>
    <input class="editOption" class="form-control" style="display:none;" id="test">
    <input type="button" onclick="alertaopciones()">

    <script>


        function refreshlistaproveedores(){
            $('#actualizarlistaproveedores').load('includes/proveedordinamico.php', function(){
               setTimeout(refreshlistaproveedores, 100);
            });
        }
        refreshlistaproveedores();

        function alertaopciones(){

            var alertados = document.getElementById("test").value;
            alert(alertados);
        }
     </script>




    <script>
    var initialText = $('.editable').val();
    $('.editOption').val(initialText);

    $('#test').change(function(){
    var selected = $('option:selected', this).attr('class');
    var optionText = $('.editable').text();

    if(selected == "editable"){
      $('.editOption').show();


      $('.editOption').keyup(function(){
          var editText = $('.editOption').val();
          $('.editable').val(editText);
          $('.editable').html(editText);
      });

    }else{
      $('.editOption').hide();
    }
    });</script>
</div>
</div>

每100ms加载一次的功能不起作用。有没有办法用PHP的每个值打印<option>

我希望你能帮帮我,如果你有任何关于代码的问题请问我!

1 个答案:

答案 0 :(得分:0)

我不确定你想要完成什么,但用这个替换你的功能:

function refreshlistaproveedores(){
        $('#test').load('includes/proveedordinamico.php', function(){
           setTimeout(refreshlistaproveedores, 100);
        });
    }

并删除:

   <div id="actualizarlistaproveedores"></div>

select中的div是无效的html