Javascript 使用PHP和AJAX更新选择下拉选项
我有一个用HTML上的select标签制作的下拉列表。 我有PHP上的值,代码如下: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
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中手动输入它。