2015-02-09 72 views
0

形式設置默認值我有一個簡單的HTML表單:如何獲得並從服務器

<div id="dialog-form-manageadvsertiser" title="Dialog title" style="display: none;"> 
    <div class="col-xs-12"> 
     <div class="form-group"> 
      <label for="inputUserId" class="col-xs-3 control-label">Account number</label> 
      <div class="col-xs-9"> 
       <input data-val="true" data-val-number="The field must be a number." id="User_Id" name="User_Id" value="" /> 
      </div> 
     </div> 
    </div> 
    <div class="col-xs-12"> 
     <div class="form-group"> 
      <label for="inputAdvName" class="col-xs-3 control-label">Advertiser name</label> 
      <div class="col-xs-9"> 
       <input data-val="true" data-val-number="" id="AdvName" name="AdvName" value="" /> 
      </div> 
     </div> 
    </div> 
</div> 

我想對於某些字段,設置默認值,這些值是動態的,所以我有一個PHP腳本返回這些值的json表示形式:

{ 
    "User_Id": "12345" 
} 

如何在加載時將此值分配給表單的UserID字段?

我正在使用jQuery框架。 我希望有某種機制在加載時觸發POST請求到服務器,然後根據字段ID將響應中的值分配給表單。

我試過在谷歌上研究它,但沒有找到相關的信息。

謝謝!

+0

如果你的'JSON'鍵匹配你輸入表單的名字,你可以使用循環來做到這一點,否則你必須手動完成。分享你的表單代碼和json – Saqueib 2015-02-09 04:29:55

+0

顯示你的代碼或json響應 – Outlooker 2015-02-09 04:51:07

回答

1

所以,你想使Ajax調用填充默認值的字段,則需要$.getJSON撥打電話

//Function for get the data and assign default value 
function getValues() { 
    //get json from server 
     $.getJSON("ajax/test.json", function(data) { 
      $.each(data, function(key, val) { 
       //Am assuming your input name matches with form fields 
       $("input[name='"+ key +"']").val(val); 
     }); 
    }); 
} 

//jQuery document ready 
$(function(){ 
    //on page load 
    getValues(); 

    //This will trigger on change of User_id 
    $("#User_Id").on('change', getValues); 
}); 

,並在PHP中,確保你正在返回與頭

一個有效的JSON
header('Content-type: application/json'); 
echo json_encode($data_array); 

Here is a working Plunk

對更多信息10 see docs