テキストボックスでテキストが変更されたときに、テキストエリアに入力されたテキストを挿入する必要があります.jquery変更関数を使用してこれを完了しました.ajaxからアクションメソッドにコントローラーがヒットしましたが、ビューからのテキストが渡されませんモデル。(使用されるコード: MVC4 /entity dbfirst/ razor ) これが私の詳細なコードです。
コントローラ:
public ActionResult Index()
{
return View();
}
public ActionResult Dailynotes()
{
return View();
}
//I’m getting this code hit from ajaxcall, but dashboard model is null????????
tblDailyNotes note = new tblDailyNotes();
[HttpPost]
public ActionResult Dailynotes(DashboardViewModel model)
{
int noteid = 0;
model.Dailynotes = note.Note;
_scheduler.InsertDailynote(note);//this is the sp to insert the note
return View();
}
インデックス.cshtml:
<div id="content">
@(Html.Kendo().TabStrip()
.Name("tabstrip")
.Items(tabstrip =>
{
tabstrip.Add().Text("Daily Notes")
.Selected(true)
.LoadContentFrom("Dailynotes", "Scheduler");
})
)
</div>
<div>
@{Html.RenderAction("Dailynotes", "Scheduler");}
</div>
Dailynotes.cshtml:
@model proj.Models.DashboardViewModel
@Html.TextAreaFor(model => model.Dailynotes, new {@class="k-textbox",id="dailynotes"})
<script>
$("#dailynotes").change(function () {
alert("Changed");
debugger;
$.ajax({
cache: true,
type: "POST",
url: window.location.pathname + "Scheduler/Dailynotes",
success: function (data) {
},
error: function (xhr, ajaxOptions, thrownError) {
},
complete: function () { }
});
});
ダッシュボードviewmodel.cs
public class DashboardViewModel
{
public string Dailynotes { get; set; }
public string Weeklynotes { get; set; }
}
post アクションを呼び出す ajax を取得しますが、dashboardmodel は、モデルのテキスト ボックスに入力したテキストを返しません。
助けてください..
編集1:/動作していません
$("#dailynotes").change(function () {
alert("Changed");
var dailynotes = $('#dailynotes').val();
debugger;
$.ajax({
url: window.location.pathname + 'Scheduler/Dailynotes',
type: 'POST',
//data: $('form').serialize(),
data:{ model:dailynotes }
})
.success(function (result) {
alert("note saved successfully");
});
});