-1
我試圖從我的視圖發送一個AJAX發佈請求到控制器,以添加新的數據到我的數據庫。但是當我在View(Index.cshtml)中編寫一個腳本來完成時,它不起作用。我試着在函數內部設置一個斷點,它說<script>代碼裏面的代碼沒有註冊
斷點當前不會被命中。沒有 調試器的目標代碼類型的可執行代碼與此行關聯。可能的 原因包括:條件編譯,編譯器優化或 該行的目標體系結構不受當前 調試器代碼類型的支持。
聲明:我可能完全錯誤,但我認爲我沒有,而且我很困惑,爲什麼我得到這個錯誤。我怎樣才能正確地做到這一點?
腳本我試圖運行:
<script>
$("#AddFriend").click(function() {
mydata = { AddName: $("#AddName").val(), AddLastName: $("AddLastName").val(), AddAge: $("AddAge").val(), AddTag: $("AddTag").val() }
$.ajax({
url: "/Home/AddFriend",
type: 'Post',
data: mydata,
success: null
});
});
</script>
代碼它指的是部分:
<div>
<label>Name:</label><input id="AddName" type="text" /> <br />
<label>Last name:</label><input id="AddLastName" type="text" /> <br />
<label>Age:</label><input id="AddAge" type="text" /> <br />
<label>Tag:</label><input id="AddTag" type="text" /> <br />
<label id="AddLabel"></label>
<button id="AddFriend">Submit</button>
</div>
控制器內部功能的AJAX代碼應達到:
[HttpPost]
public void AddFriend(string AddName, string AddLastName, string AddAge, string AddTag)
{
using (var context = new ContactEntities1())
{
Friend fr = new Friend();
fr.userId = 1;
fr.Name = AddName;
fr.LastName = AddLastName;
fr.Age = Convert.ToInt32(AddAge);
fr.Tag = AddTag;
context.Friend.Add(fr);
context.SaveChanges();
}
}
(爲了記錄,我在下面一行設置了斷點:)
mydata = { AddName: $("#AddName").val(), AddLastName: $("AddLastName").val(), AddAge: $("AddAge").val(), AddTag: $("AddTag").val() }
點擊AddFriend按鈕後,你檢查了斷點嗎? –
這個問題不清楚,我真的不知道你在問什麼。這似乎是一種幫助,而不是任何事情。但沒有一個明確的問題,我看不出這是怎麼回事。 – Liam
@Liam當我點擊「AddFriend」按鈕時,沒有任何反應。腳本不應該在那時執行?然後,當我添加斷點時,我收到錯誤消息「斷點不會被打」,這意味着它沒有到達代碼的那一部分,我不知道爲什麼。這是我的問題 –