php - Jquery 脚本未显示在 firebug 或触发中

标签 php jquery mysql ajax firebug

我试图通过使用 jquery/ajax 脚本获得一个下拉框来更改第二个下拉框。 Firebug 显示 Jquery 正在运行,但我的脚本根本没有显示。

<script type="text/javascript">
        function ajaxfunction(parent)
        {
            $.ajax({
                url: '../functions/process.php?parent=' + parent;
                success: function(data) {
                    $("#sub").html(data);
                }
            });
        }
    </script>

process.php 只是一个 MySQL 查询(有效)

我的初始下拉框由 MySQL 查询填充

<select name="front-size" onchange="ajaxfunction(this.value)">
//Query
</select>

然后第二个下拉框就是

<select name = "front-finish" id="sub">
</select>

我该如何解决这个问题?

最佳答案

调用内联函数一点也不好……因为 web 2.0 标准建议使用不显眼的 JS 而不是单一事件属性……查看原因 here .. 其他事情..使用 ajax 的正确方法是使用类型和数据 ajax 选项在 Controller 中发送值..

<script type="text/javascript">
    $(function(){
    $('select[name="front-size"').change(function()
    {
        $.ajax({
            url: '../functions/process.php',
            type:'get',
            data:{'value' : $(this).val()}, 
            dataType:"html",   //<--- here this will take the response as html... 
            success: function(data) {
                $("#sub").html(data);
            }
        });
    });
 });
</script>

你的 proces.php 应该是..

 <?php
   //db query ...thn get the value u wanted.. 
   //loop through it..
   $optVal .= "<option value="someDbValue">some DDB values</option>";
   // end loop

   echo $optValue;exit;

已更新

看起来你仍然有 onchange="ajaxfunction(this.value)" 在你的选择中删除它是不需要的,javascript 中的 ajaxfunction 也是......

<select name="front-size" >    
                   //----^ here remove that

关于php - Jquery 脚本未显示在 firebug 或触发中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15470784/

相关文章:

php - Amazon S3 以相反顺序列出对象

mysql - 数据库设计,不同列中的许多不同项目(项目 a 可以在列 a 或 b 中)

jquery - 循环遍历 JSON 响应对象

PHP 和 MySQL WP

php - 保存到mysql时的UTF-8问题

php - PDO 中的 PostgreSQL 从不报错

php - 在给定属性值的对象数组中查找数组键

c# - 将二进制数据从 C# 上传到 PHP

javascript - 单击功能后在 jquery 中禁用悬停效果时出错

jquery - 逐个添加类,每个类一秒后添加