できるだけ早く私を助けてください。
私はjqueryタブを使用していますが、タブごとにフォームが異なるため、ページに複数のフォームがあります。また、すべてのフォームの外側にあるページに非表示のフィールド Id があります。フォームを送信すると、コントローラーで非表示のフィールドが null になります。オートコンプリートの選択時に非表示フィールドに値を設定しているため、なぜそれが起こっているのですか。ユーザーがオートコンプリート リストから値を選択すると、値が非表示フィールドに設定されます。つまり、送信ボタン クリックのクリックをチェックすると、非表示フィールドが空ではないということです。アラートでチェックすると、非表示フィールドに値が表示されますが、隠しフィールドが空になるコントローラー。これは私が試した最初の方法です。実際には、すべてのフォームの保存時に非表示フィールドをグローバルに保持したいのですが、
FIRST Method:::
<div id="PageContent">
@Html.HiddenFieldfor(m=>m.fkID)
<div id="tabs">
<ul>
<li><a href="#tabs-1">Nunc tincidunt</a></li>
<li><a href="#tabs-2">Proin dolor</a></li>
<li><a href="#tabs-3">Aenean lacinia</a></li>
</ul>
<div id="tabs-1">
@using (Ajax.BeginForm("Evaluation","SaveTab1"{new AjaxOptions { Onsucess= "DisplayMessage" }))
{
<input type="Submit" id="btnTab1" value="Submit" onclick="CheckUser();"/>
}
</div>
<div id="tabs-2">
@using (Ajax.BeginForm("Evaluation","SaveTab2"{new AjaxOptions { Onsucess= "DisplayMessage" }))
{
<input type="Submit" id="btnTab2" value="Submit" />
}
</div>
<div id="tabs-3">
@using (Ajax.BeginForm("Evaluation","SaveTab3"{new AjaxOptions { Onsucess= "DisplayMessage" }))
{
<input type="Submit" id="btnTab3" value="Submit" />
}
</div>
</div>
</div>
<script type="text/javascript">
</script>
In the second One I placed hidden field in the form that is in the form of first tab.Now, I am getting the model value in the controller.but after the json response I tried to set the value on the success event , the value is coming but on the submission of second form that hidden field is coming again empty. Please help me to solve this problem.
<div id="tabs">
<ul>
<li><a href="#tabs-1">Nunc tincidunt</a></li>
<li><a href="#tabs-2">Proin dolor</a></li>
<li><a href="#tabs-3">Aenean lacinia</a></li>
</ul>
<div id="tabs-1">
@using (Ajax.BeginForm("Evaluation","SaveTab1"{new AjaxOptions { Onsucess= "DisplayMessage" }))
{
@Html.HiddenFieldfor(m=>m.fkID)
<input type="Submit" id="btnTab1" value="Submit" onclick="CheckUser();"/>
}
</div>
<div id="tabs-2">
@using (Ajax.BeginForm("Evaluation","SaveTab2"{new AjaxOptions { Onsucess= "DisplayMessage" }))
{
<input type="Submit" id="btnTab2" value="Submit" />
}
</div>
<div id="tabs-3">
@using (Ajax.BeginForm("Evaluation","SaveTab3"{new AjaxOptions { Onsucess= "DisplayMessage" }))
{
<input type="Submit" id="btnTab3" value="Submit" />
}
</div>
</div>
</div>
<script type="text/javascript">
function DisplayMessage(Json)
{
alert( $("#fkID").val(Json.hdn));
and Alert is showing the value
$("#fkID").val(Json.hdn);
}
</script>
In the controller I have done::
public ActionResult SaveTab1(Model obj)
{
tbl ob =new tbl();
ob.FkId=Obj.fkID;
after saving, I return
return json(new{hdn=Obj.fkID})
}