返回选项select的javascript输出
我正在编写这些代码,需要一些帮助。基本上,我正在尝试获取脚本的结果或输出,并将其放在选项选择之间,如下所示:返回选项select的javascript输出,javascript,php,Javascript,Php,我正在编写这些代码,需要一些帮助。基本上,我正在尝试获取脚本的结果或输出,并将其放在选项选择之间,如下所示: <select class="form-control" name="property_list"> *insert output javascript here </select> 下面是完整的脚本。这种方法可行吗 <script> $(document).ready(function(){ $("
<select class="form-control" name="property_list">
*insert output javascript here
</select>
下面是完整的脚本。这种方法可行吗
<script>
$(document).ready(function(){
$("#client-list").on('change', function postinput(){
var matchvalue = $(this).val(); // this.value
$.ajax({
url: 'sql/client-to-property.php',
data: { matchvalue: matchvalue },
type: 'post'
}).done(function(responseData) {
console.log('Done: ', responseData);
}).fail(function() {
console.log('Failed');
});
});
});
</script>
<div class="input-group mb-3">
<span class="input-group-addon gi data-gi-size gi-user-add"></span>
<select id="client-list" name="client-list">
<?php
$sql = "SELECT `id`, `email`
FROM `clients` ORDER BY `id` ASC";
$result = $DB_CON_C->query($sql);
if($result !== false) {
$data_row = '<option>New Client</option>' . "\n";
foreach($result as $row) {
$data_row .= '<option>' .$row['email'] . '</option>' . "\n";
}
}
unset($row);
echo $data_row;
?>
</select>
</div>
<select class="form-control" name="property_list">
*insert output javascript here
</select>
循环浏览您的响应数据并将选项附加到属性列表中,如下所示:
$(document).ready(function(){
$("#client-list").on('change', function postinput(){
var matchvalue = $(this).val(); // this.value
$.ajax({
url: 'sql/client-to-property.php',
data: { matchvalue: matchvalue },
type: 'post'
}).done(function(responseData) {
console.log('Done: ', responseData);
var data = JSON.parse(responseData); // Assuming response data is a JSON string
data.each(function(i, property) {
$("input[name=property_list]").append("<option />").text(property);
});
}).fail(function() {
console.log('Failed');
});
});
});
选项也需要值,因此您也可以将该属性添加到选项中:
$("input[name=property_list]").append("<option />").attr('value', property).text(property);
用于将返回的数据添加到select,在完成的函数中,按名称获取select并添加数据。如果返回的数据采用以下格式,则此操作有效:
<option value="1">1</option>
<option value="2">2</option>
您想在select中显示数据库中的数据吗?是的,我的ajax脚本为我的select选项返回了几个选项。我只需要这些选项之间的选项选择,以便用户可以选择。忘记提到脚本的结果是从client-to-property.php生成的。返回的数据是html格式的?我相信html格式的返回数据将适用于选项选择,因为从php生成的文本包含选项选择。您能分享ajax请求的响应吗?谢谢,但我收到错误UncaughtSyntaxError:JSON中位置0处的意外标记<。不起作用,julekgwa。没有错误,但选择为空。没有返回任何选项。@ubuntujavy console.log responseData,并查看是否从php返回数据从client-to-property.php返回的格式为:[New12345]。但是您提供的代码不起作用。您是作为字符串进行响应还是使用json_encode?响应数据在哪里或如何查找console.log?对不起,我对这方面还不熟悉,正在努力学习。
$(document).ready(function () {
$("#client-list").on('change', function postinput(){
var matchvalue = $(this).val(); // this.value
$.ajax({
url: 'sql/client-to-property.php',
data: { matchvalue: matchvalue },
type: 'post'
}).done(function(responseData) {
console.log(responseData);
var data = JSON.parse(responseData);
$('select[name="property_list"]').html(data);
}).fail(function() {
console.log('Failed');
});
});
});