Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用PHP和AJAX更新选择下拉选项_Javascript_Php_Jquery_Ajax - Fatal编程技术网

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

Javascript 使用PHP和AJAX更新选择下拉选项,javascript,php,jquery,ajax,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($dis

我有一个用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>';
}
?>
<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>


index.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>';
}
?>
<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>

选择1
选择2
其他
函数refreshlistaproveredores(){
$('#actualizarlistaproveredores').load('includes/proveedordinamico.php',function(){
设置超时(RefreshListaProveStores,100);
});
}
refreshlistaproveredores();
函数alertaopciones(){
var alertados=document.getElementById(“测试”).value;
警报(alertados);
}
var initialText=$('.editable').val();
$('.editOption').val(初始文本);
$('#test')。更改(函数(){
var selected=$('option:selected',this).attr('class');
var optionText=$('.editable').text();
如果(选定==“可编辑”){
$('.editOption').show();
$('.editOption').keyup(函数(){
var editText=$('.editOption').val();
$('.editable').val(editText);
$('.editable').html(editText);
});
}否则{
$('.editOption').hide();
}
});
每100毫秒加载一次的功能不起作用。有没有办法用PHP的每个值打印


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

我不太确定您试图实现什么,但用以下内容替换您的功能:

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

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


select中的div不是有效的html

我不确定您试图实现什么,但用以下内容替换您的函数:

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

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


select中的div无效html

中的“”用于提醒我select的值,我希望您能理解我正在做什么^^^中的“”用于提醒我select的值,我希望您能理解我正在做什么^^^我希望一个select标记在插入值时刷新。此外,当选择输入类型“editOption”时,将显示输入,以输入select的自定义值。它可以工作,但只插入在PHP中声明的内容,我需要在PHP中手动输入它。此外,当选择输入类型“editOption”时,将显示输入,以输入select的自定义值。它可以工作,但只插入在PHP中声明的内容,我需要在PHP中手动输入它。