2013-03-03 47 views
0

我已經使用jquery ui選項卡效果。我正在嘗試將數據插入到模型中..它完美的工作..我可以插入記錄..但我的問題是如何在插入後保持在同一個選項卡上?我可以從控制器執行它嗎?我試圖做到這一點在我的asp.net MVC 3應用如何在asp.net mvc 3中插入後留在相同的jquery ui選項卡中?

這裏去我的標籤調用部分:

<script> 
    $(function() { 
     $("#tabs").tabs(); 

    }); 
</script> 


<div id="tabs"> 
<ul> 

<li><a href="#tabs-2">Proin dolor</a></li> 
<li>@Html.ActionLink("Create Student","CreateStudent")</li> 
<li>@Html.ActionLink("Student Details", "StudentDetails")</li> 

</ul> 
</div> 

這裏去學生詳情標籤:

@model IEnumerable<accordionNtabs.Models.student> 


<table> 
    <tr> 
     <th> 
      name 
     </th> 
     <th> 
      birthdate 
     </th> 
     <th></th> 
    </tr> 

@foreach (var item in Model) { 
    <tr> 
     <td> 
      @Html.DisplayFor(modelItem => item.name) 
     </td> 
     <td> 
      @Html.DisplayFor(modelItem => item.birthdate) 
     </td> 
     <td> 
      @Html.ActionLink("Edit", "Edit", new { id = item.id }, new { id = "privacyLink" }) | 
      @Html.ActionLink("Details", "Details", new { id=item.id }) | 
      @Html.ActionLink("Delete", "Delete", new { id=item.id }) | 

     </td> 
    </tr> 
} 



</table> 

這裏是點擊編輯鏈接時顯示的編輯視圖:

@model accordionNtabs.Models.student

@using(Html.BeginForm()){ @ Html.ValidationSummary(真) 學生

@Html.HiddenFor(model => model.id) 

    <div class="editor-label"> 
     @Html.LabelFor(model => model.name) 
    </div> 
    <div class="editor-field"> 
     @Html.EditorFor(model => model.name) 
     @Html.ValidationMessageFor(model => model.name) 
    </div> 

    <div class="editor-label"> 
     @Html.LabelFor(model => model.birthdate) 
    </div> 
    <div class="editor-field"> 
     @Html.EditorFor(model => model.birthdate) 
     @Html.ValidationMessageFor(model => model.birthdate) 
    </div> 

    <p> 
     <input type="submit" value="Save" /> 
    </p> 
</fieldset> 

}

@ Html.ActionLink(「返回列表」,「索引」)

我想要編輯視圖加載在同一個選項卡上。

+0

「如何留在同一個標​​籤」是什麼意思?顯示你的代碼並確定代碼的哪一部分導致了問題 – charlietfl 2013-03-03 14:10:36

+0

我已經添加了代碼 – 2013-03-03 14:16:47

+0

'load in same tab'是什麼意思?請花更多精力,以更明確的方式解釋你正在嘗試做什麼。目前還不清楚您的服務器代碼或客戶端代碼是否有問題,以及會觸發此加載 – charlietfl 2013-03-03 14:32:16

回答

2

聽起來像你正在做一個回傳,然後頁面刷新..沒有Ajax的權利?在這種情況下,您需要使用隱藏字段或其他內容來記錄選中哪個選項卡,然後當您重新顯示錶單時,您需要通過javascript設置選定的選項卡。看到這個答案的想法...:Selecting a jQuery Tab using a parameter in the URL

+0

是的!沒有ajax :)謝謝! – 2013-03-03 14:41:46

0

這是asp.net webforms通過viewstate提供的功能。不幸的是,使用asp.net MVC,開發人員需要編寫一些代碼來處理這個問題。您可以在Cookie中保持此狀態,但請注意用戶可能會禁用Cookie。或者,您可以使用HTML5 Web存儲對象來存儲UI狀態。

相關問題