首页 > 解决方案 > jQuery ajax select onChange 使用数据库更新输入字段值

问题描述

我想不通我的目标是在用户更改下拉框的值后,我的输入字段(f_project_straat)更改为从 php 文件中检索到的正确值。

我记录了它,我得到了正确的值,但它只有在我刷新页面(f5)后才会改变,我希望拥有我不需要刷新页面的东西。

我有一个下拉框和一个输入字段一个函数和一个不同的 php 文件。

下拉框和输入框

        <div id="fc_opdrachtgever_id" class="at_e_f_container">
        <div id="fn_opdrachtgever_id" class="at_e_fieldname">
            Opdrachtgever *
        </div>
        <div id="fe_opdrachtgever_id" class="at_e_fieldvalue">
            <select name="f_opdrachtgever_id" id="f_opdrachtgever_id" onchange="showUser(this.value)">>
                [var.opdrachtgever;htmlconv=no]
            </select>
        </div>
    </div>

    <div id="fc_project_straat" class="at_e_f_container">
        <div id="fn_project_straat" class="at_e_fieldname">
            <span>Project straat * </span>
        </div>
        <div id="fe_project_straat" class="at_e_fieldvalue">
            <input class="formfield" name="f_project_straat" id="f_project_straat" type="var" size=50 maxlength=150  value="[var.currentstreet]">
        </div>
    </div>

我做了这样的功能:

  $('#f_opdrachtgever_id').on('change', function() {
    var select = $(this).val();
    console.log(select)
  $.ajax({
    type: "GET",
    url: "getadres.php",
    data: {
      id: select
    },
    success: function(msg) {
      $('#f_project_straat').text(msg);
      alert(msg);
    }
  });
  })

最后我做了一个php函数来获取

    $id = intval($_GET['id']);

$sql = "SELECT * FROM " . CURRENTTABLE. " WHERE id = $id";
 $rs = DBExecute($sql );
                if ($rs){
                    if (!$rs->EOF){
                        $street = $rs->fields('street');
                        $_SESSION['s_street'] = $street ;
                        $GLOBALS['currentstreet']=$_SESSION['s_street'];
                    }
                }

提前致谢!

标签: javascriptphpjqueryajaxrefresh

解决方案


推荐阅读