私は、自分のパスワードを変更したり、新しい変数に2つの変数、1つは新しいパスワード、もう1つはパスワードの繰り返しを必要とする方法を持っています。そのメソッドを呼び出すと、文字列 "undefined"が返され、その文字列が新しいパスワードとして使用され、dbに保存されます。 誰かが私が間違っていることを教えてもらえますか? コントローラ:AjaxからMVCコントローラに送信される未定義の変数
[HttpPost]
public JsonResult ChangePwdEnt(string pwd, string repeatpwd)
{
if (pwd == null || repeatpwd == null)
{
ViewBag.Error = "Insira os campos obrigatórios";
}
else
{
if (pwd == repeatpwd)
{
changePwd_Entidades(Session["ID"].ToString(),pwd);
return Json(true,JsonRequestBehavior.DenyGet);
}
else
{
ViewBag.Error = "As palavras chave precisam de ser iguais";
}
}
return Json(false, JsonRequestBehavior.DenyGet);
}
スクリプト:あなたがPOST
方法
var data = JSON.stringify({
'pwd': $('#Info_pwd').val(),
'repeatpwd':$('#Info_repeatpwd').val()
});
$.ajax({
type: 'POST',
contentType: 'application/json',
url: '@Url.Action("ChangePwdEnt", "Home"),
data: data,
error: function (e) {
console.log(e);
},
success: function (Changed) {
if (Changed) {
window.location = "Entidades";
} else if (!Changed) {
window.location = "LoginEntidades";
}
}
});
これを使用している間、data
パラメータにデータを送信する方が良いだろう
<script>
$('.alt-btn').on('click', function() {
$.ajax({
type: 'POST',
contentType: 'application/json',
url: '@Url.Action("ChangePwdEnt", "Home")?pwd=' +
$('#Info_pwd').val() + '&repeatpwd=' + $('#Info_repeatpwd').val(),
error: function (e) {
console.log(e);
},
success: function (Changed) {
if (Changed) {
window.location = "Entidades";
} else if (!Changed) {
window.location = "LoginEntidades";
}
}
});
});
使用しているHTMLフィールドのIDは正しいですか? – crazyglasses
@crazyglasses神私は盲目だ...間違ったモデルを使用していた:c私の愚かさheheで私を助けてくれてありがとう – Wood
母は問題なし – crazyglasses