我有一个异步方法,它调用web api来检索json数据。
然后我使用json数据填写几个''框。但是,在刷新页面之前,这些值不会出现在文本框中?
HTML:
<form>
<h1 id="OrderNameHeader"></h1>
<div class="dataitemdiv">
<p class="dataitemlabel">Quantity:</p>
<input id="quantitytb" type="text" readonly="readonly" class="dataitemtextbox" />
</div>
<div class="dataitemdiv">
<p class="dataitemlabel">Delivery Date:</p>
<input id="deldatetb" type="text" readonly="readonly" class="dataitemtextbox" />
</div>
</form>
Javascript:
function SearchOrder() {
var OrderName = document.getElementById("SearchTextBox").value;
var frurl = 'order/getbyname/' + OrderName;
var api = new GetJSON(frurl);
var obj;
obj = api.CallAPI().done(function (data) {
//alert('Quantity: '+data.Quantity +' & Delivery Date: ' + data.DeliveryDate);
var onh = document.getElementById("OrderNameHeader");
onh.title = data.OrderName;
document.getElementById("quantitytb").value = data.Quantity;
document.getElementById("deldatetb").value = data.DeliveryDate;
});
}
此时值得注意的是:alert('Quantity: '+data.Quantity +' & Delivery Date: ' + data.DeliveryDate);
行完全正常?
我是否必须在Javascript中对页面进行一些手动刷新,或者还有其他我缺少的内容
更新
只是为了添加一些额外的信息,我已经做了一些调试,我可以看到data.~
或我试图修改的元素都不是undefined
,它们都有值。
在所有主流浏览器上测试过这个(减去safari)。