jQuery ajax选择onChange更新数据库的输入字段值

时间:2018-09-25 11:37:01

标签: javascript php jquery ajax refresh

我无法弄清楚我的目标是在用户更改下拉框的值后,我的输入字段(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'];
                    }
                }

谢谢!

0 个答案:

没有答案