Всем привет! Вроде тривиальная задача, но бьюсь уже час.
есть представление:
@using (Ajax.BeginForm("AddRecord", "Records",
new AjaxOptions
{
HttpMethod = "post",
UpdateTargetId = "target",
LoadingElementId = "sendingProgress",
InsertionMode = InsertionMode.Replace,
OnSuccess = "OnSucc"
}))
{
<fieldset>
@Html.HiddenFor(model => model.Event_Id, new { id = "hiddenID" })
.....
<p id="VievAfterGreate">
<h5>Вы можете:</h5>
@Html.ActionLink("Просмотреть запись", "VoewDetailed", "Records", new {id = Model.Event_Id }, new { target = "_blank" })
</p>
.....
<script type="text/javascript">
//так как модель еще не содержит айдишку записи (ее еще не добавили) - скрываю ссылку просмотра записи
$('#VievAfterGreate').hide();
//ПОЛУЧАЕМ ДЖЕЙСОН ПАРАМЕТР id добавленной записи, который отправил нам контроллер при добавлении записи
function OnSucc(data) {
$('#hiddenID').val(data.Id);
// проверяю - айдишка есть
alert($('#hiddenID').val());
//айдишка есть, строкой выше мы ее передали в модель - @Html.HiddenFor(model => model.Event_Id, new { id = "hiddenID" })
//теперь показываю ссылку для просмотра
$('#VievAfterGreate').show();
}
</script>
но как не делаю, параметр id для передачи в ссылку просмотра - пустой
new {id = Model.Event_Id }
что я не так делаю?
UP
как временно решение сделал:
....
<span id="LinkViewAfterGreate"></span>
....
<script type="text/javascript">
function OnSucc(data) {
$('#Event_Id').val(data.Id);
var link = document.createElement('a');
link.textContent = 'Просмотреть созданную запись';
link.href = 'http://localhost:11733/Records/record/' + data.Id;
link.target = '_blank';
document.getElementById('LinkViewAfterGreate').appendChild(link);
.....
</script>