我试图使用ajax从select标签中传递所选项目的值: 这是选择标签(它不是一种形式):
<select class="select" id="select" >
</select>
这里是使用php填充数据库选择的代码:
$(document).ready(function(){
<?php foreach ($espace_ids as $row ) {?>
$('#select').append('<option value="<?php echo $row['espace_id']; ?>"><? php echo $row['nom']; ?></option>');
<?php }?> });
用于将数据从实际页面发送到dashbored.php,这里是代码:
$("#select").change(function() {
$.ajax({
type: 'post',
url: "<?php //echo base_url(); ?>index.php?directeur/dashboard ?>",
data: espace_id: $("#select").val(),
success: function( data ) {
alert( data );
}
});
我检索发送的值:
$espace_id=$_POST['espace_id'];
它显示的问题:对dashboard.php中espace_id的未定义引用。 好吧,目的是根据用户选择的espace从数据库加载espace信息。用户选择一个选项时,我应该加载与所选espace相关的适当信息。 我希望你能帮助我。 感谢
答案 0 :(得分:0)
您可以使用以下示例在index.php
中获取espace ID。
$(document).ready(function ()
{
$('#select').on('change', function ()
{
if ($('#select').val() === null) {
alert("Error");
}
else
{
var selectedValue = $('#select').val();
$.ajax
({
url: 'index.php',
type: 'POST',
data: 'espace_id=' + selectedValue,
success: function(response)
{
alert(response);
}
});
}
});
});
index.php上的
if(isset($_POST['espace_id']) && !empty($_POST['espace_id']))
{
// do whatever you want to do here!!
}
答案 1 :(得分:0)
对于那些想要比Jquery更轻的人,你可以这样做:
<select onchange="livesearch(this.value)"><option></option></select>
<script>
function livesearch(id){
xmlhttp = new XMLHttpRequest(); xmlhttp.open("GET","url?id="+id, false); xmlhttp.send(null); document.getElementById("searchresults").value=xmlhttp.responseText; }
</script>