根据其他两个选择框填写选择框 - jquery

时间:2012-10-09 13:27:05

标签: php jquery mysql

我有三个下拉菜单。根据在两个列表中选择的项目,应填写第三个列表(ajax post)。

这是html代码:

Source Language:
<select name='source_lang' id='source_lang' $dis size='6'>
<option value='en'>EN</option>
<option value='sq'>SQ</option>
.....
</select>

Target Language:
<select name='targ_lang' id='targ_lang' $dis size='6'>
<option value='en'>EN</option>
<option value='sq'>SQ</option>
.....
</select>


Supplier:
<select name='supplier_id' id='supplier_id'>
<option value='1'>Supplier 1</option>
<option value='2'>Supplier 2</option>
</select>

在目标和源语言更改时,应填写供应商选择列表。

任何人都可以帮助我使用jquery?我需要ajax发布源,目标语言值,并作为响应填写带有数据的供应商选择列表。

2 个答案:

答案 0 :(得分:1)

这是你要找的东西吗?

$('#targ_lang, #source_lang').change(function(){
       $.ajax({
          url : '',
          method : 'post',
          type : 'json',
          data : {
            select1 : $('#targ_lang').val(),
            select2 : $('#source_lang').val()
          },
          complete : function(result){
            var options = $.parseJSON(result);
            $('#supplier_id').html("");
            for(i=0; i < options.length; i++) {
                $('#supplier_id').append(
                     '<option value="'+ options[i] + '">' + 'Supplier' + options[i] + '</option>'
                );
            }
          });
      });
});

在PHP方面,你需要发送你的结果:

$array = new Array(1,2,3,4); // supplier IDs
echo json_encode($array);

答案 1 :(得分:0)

使用jQuery的.post()方法的示例:

$('#targ_lang, #source_lang').change(function(){
   $.post("test.php", { source: $('#source_lang').val(), target: $('#targ_lang').val()},
     function(data) {
       //Change the data of the 3rd select
   });
});