AJAX / Javascript在PHP中选择页面加载时的元素更改

时间:2014-03-05 14:51:05

标签: javascript php jquery ajax

我使用以下Javascript根据使用PHP / Mysql的动态选择填充另一个表单。

这很好但我也想在发送URL字符串时使用_GET来触发它。我已将select元素配置为默认使用此选项:

<option value="<?php echo $_GET['EmpNumber'] ?>"><?php echo $_GET['EmpFirstName'] ?> <?php echo $_GET['EmpLastName'] ?></option>

但是当我在URL中调用具有EmpNumber,EmpFirstName和EmpLastName值的页面时,下面的脚本不会触发。我如何实现这一目标?

<script>
      $(document).ready(function() {    
$('select').on('change', function (e) {
    var optionSelected = $("option:selected", this);
    var valueSelected = this.value;
   if(valueSelected){
           $.ajax({
            type: "POST",
            cache: false,
            url: "getinfo.php",
            data: "data="+valueSelected,
            dataType: "html",
            success: function(res) 
            {

               //alert(res);
          $('#Name').val(res + '\'s');
            },
            error: function(xhr, ajaxOptions, thrownError)
            {

            },
            async: false
        });
   }

   else {
        $('#Name').val('Value');
   }




   //alert(valueSelected);
});
});
</script>

1 个答案:

答案 0 :(得分:2)

如果我正确理解了这个问题,您希望在首次加载页面时触发change事件的相同功能。这很简单:

$('select').on('change', function() {
    // some code
}).trigger('change');

最后一部分.trigger('change')(或简称.change())将执行您刚刚绑定到这些元素的change事件的函数,就像用户选择了新价值。