如何在joomla 2.5中创建ajax调用以创建状态的drop drown

时间:2014-02-05 09:52:03

标签: ajax joomla

我是joomla的初学者。我在前端有一个联系表单,我希望在选择国家时获取状态下拉列表。此联系表单显示在myproject / components / com_contact / views / contact / tmpl / default_form.php。我有一个国家下降。我想对联系人控制器中的函数filterState()进行ajax调用。这是我的ajax代码

`<script>
$( document ).ready(function() {
       $( "#jform_contact_country" ).change(function(){
          var id = $( "#jform_contact_country option:selected" ).val();
          alert(id); 
          $.ajax({
              url: "index.php",
              data: 'option=com_contact&task=filterState()&country_id='+id,
              success: function(data) {
                    alert('succes');
                }
              }); 
        });
    });
</script>` 

方法filterStae位于contact.php中,该文件位于myproject / components / com_contact / controllers /中。但是,当我更改国家/地区时,此函数未被调用,并且调用将转到index.php并且不会转到此页面?如何实际调用此函数?

1 个答案:

答案 0 :(得分:0)

尝试将代码更改为此代码:

<script>
  $(document).ready(function() {
    $("#jform_contact_country").change(function(){
      var id = $("#jform_contact_country option:selected").val();
      alert(id); 
      $.ajax({
        url: "index.php?option=com_contact&task=CONTROLLER_NAME.filterState&country_id="+id,
        success: function(data) {
          alert('succes');
        }
      }); 
    });
  });
</script>

使用/ controllers /中的控制器文件名更改 CONTROLLER_NAME 从我的代码中可以看出,要访问控制器的方法,任务值应为CONTROLLER_NAME.METHOD_NAME