【发布时间】:2014-03-06 21:58:45
【问题描述】:
Visual Studio 2012
MVC 5.1.1
ASP.Net Razor 3.1.1
引导程序 3.1.1
jQuery 2.1.0
json.Net 6.0.1
网页优化 1.1.3
Webgrease 1.6.0
等 - 大多数新的扩展等
我有一个带有 Telerik MVC KendoUI ComboBoxFor ComboBoxes 在剃刀局部视图中的 MVC Web 应用程序:
@model HTPortal.ViewModels.ClientInquiryViewModel
@using System.Web.UI.WebControls
@using Kendo.Mvc.UI
<div class="form-group">
@Html.LabelFor(model => model.AddressState, new { @class = "control-label col-sm-2
col-md-2 col-lg-2" })
<div class="col-sm-5 col-md-5 col-lg-5">
@(Html.Kendo().ComboBoxFor(model => model.AddressState)
.Placeholder("Select Province...")
.DataTextField("ProvinceName")
.DataValueField("ProvinceName")
.Suggest(true)
.BindTo(Model.Provinces)
)
</div>
</div>
数据已加载到组合框中 - 一切正常。
在父剃须刀页面中,在 @using (Html.BeginForm()) 块之后,我有:
@section Scripts
{
<script type="text/javascript">
$(document).ready(function () {
$.getJSON("http://smart-ip.net/geoip-json?callback=?", function (data) {
alert(data.region);
//$("#AddressCity").val(data.city);
$("#AddressState").val(data.region);
//$("#AddressCountry").val(data.countryName);
});
});
</script>
}
在第一页加载时,警报确实触发了,我看到我的省/州显示在警报中。 但是,我的名为 AddressState 的 Combobox 只有在我刷新页面后才会被填充。
我已经阅读了关于类似问题的各种其他帖子,但没有窗口加载或初始化或任何工作。
事实上,在 IE 和 Chrome 中——我得到的只是警告对话框——这些字段永远不会被填满。
帮助....
如何在第一次调用页面时让这个 jQuery 填充字段?
【问题讨论】:
标签: jquery asp.net-mvc-5