У меня есть форма, которая отображает PartialView
для меня (при нажатии кнопки).Все работает хорошо:
<div class="form-group">
@Html.LabelFor(m => m.Code, new { id = "Code", @class = "col-md2 control-label" })
<div class="col-md-12">
@Html.TextAreaFor(m => m.Code, new { @class = "form-control", @cols = 100, @rows = 20 })
@Html.ValidationMessageFor(m => m.Code, null, new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
<div class="col-md-offset-0 col-md-10">
<br />
<input id="submit" type="button" class="btn btn-default" value="Submit" />
</div>
<br /><br />
<div class="result" id="Result">
</div>
</div>
@section Scripts {
<script>
$(document).ready(function () {
$("#submit").click(function () {
var url = "@Url.Action("Controller", "Home")"
var code = $("#Code").val();
$("#Result").load(url, { code: code });
});
});
</script>
То, что я хочу сделать, это нажатие кнопки пользовательского интерфейса, пока я не получу PartialView
, которые появляются в div id="Result"
.Как заблокировать пользовательский интерфейс при нажатии кнопки до тех пор, пока load
func on script не отобразит мой PartialView
и покажет spinner
или панель прогестирования, пока это не будет сделано?Этот скрипт не будет работать:
<script>
$(document).ready(function () {
$("#submit").click(function () {
$.blockUI();
var url = "@Url.Action("Controller", "Home")"
var code = $("#Code").val();
$("#Result").load(url, { code: code });
$.unblockUI();
});
});
</script>
Я не хочу использовать Ajax.BeginForm
, потому что cshtml
выше работает довольно хорошо.Если мне нужно использовать Ajax
, мне нужно будет сильно измениться с моего html
?