私は MVC アプリケーションを開発しており、かみそりの構文を使用しています。選択した項目をドロップダウン リストの値から取得し、それをコントローラー メソッドに渡そうとしています。
しかし、私はエラーが発生しています。
The name 'd' does not exist in the current context
更新されたコードは...
$("#btnForword").click(function(){
d = $('#HODList').val()
alert(d);
var url2 = "@Html.Raw(Url.Action("SendPaymentAdviceForApproval", "PaymentAdvice", new { paymentAdviceId = "idValue" , nHOD = "@@D@@" }))"
url2 = url2.replace("idValue",'@Model.Id');
url2 = url2.replace("@@D@@",d);
$.ajax({
url: url2, type: "POST", success: function (data) {
$("#btnForword").css("display","none");
}
});
return false;
});
問題が解決しました 問題が解決しました
変数「D」の問題は「D」にあります。
コンソールウィンドウで見たとき、Google chromeのinspect要素プロパティを使用して確認しました... ボタンをクリックすると、次のように形成された文字列が表示されます
ht...../PaymentAdvice/SendPaymentAdviceForApproval?paymentAdviceId=304&nHO8=D
jquery-1.7.1.min.js:4
上記のリンクの最後の文字を参照してください。「=D」として来るべきではありませんね。
私は以下のコードを使用しました...そしてそれは完全に機能します。
$("#btnForword").click(function(){
var url2 = "@Html.Raw(Url.Action("SendPaymentAdviceForApproval", "PaymentAdvice", new { paymentAdviceId = "idValue" , nHOD = "HODId" }))";
url2 = url2.replace("idValue",'@Model.Id');
url2 = url2.replace("HODId",$('#HODList').val());
$.ajax({
url: url2, type: "POST", success: function (data) {
$("#btnForword").css("display","none");
}
});
return false;
});
これは Jquery のバグですか?