jquery/ajaxスクリプトを作成しようとしています。目的は、データベースからデータを取得し、successFuncの結果を比較し、次のajax呼び出しをmvc actionResultに実行し、結果に応じてビューをレンダリングすることです。何らかの理由でそれが機能していません。Ajax呼び出しが失敗しています
function GetPageData() {
$.ajax({
type: "Post",
url: '/Track/GetPageData',
dataType: "json",
data: param = "",
success: successFunc,
error: errorFunc
});
function successFunc(data, status) {
alert('data; '+data+', '+'status: '+status);
if (data == 'contact') {
$.ajax({
type: "Post",
url: '/Track/Contact',
dataType: 'json',
success: successF,
error: errorF
});
function successF() {
alert('services')
}
function errorF() {
alert('servicesFail')
}
}
ActionResults方法の一つ:
public ActionResult Contact()
{
return View();
}
私はその呼び出しを見ることができますデバッグ中(のActionResult連絡先に行われている)が、それはビューをレンダリングしません。なぜコードが動作していないのでしょうか?
いただきありがとうございます。 'dataType: 'json''が指定されているので、あなたは' 500 Internal Server Error'を取得していますが、あなたはメソッドがhtmlを返します( 'dataType:' html 'でなければなりません。 Ajax関数が働きます) –
基本的に、JSONをリクエストすると、サーバーアクションメソッドはJSON文字列を返す必要があります。全体のビューを返すことは、JSONでAjaxを使用することの全ポイント(データ転送を小さく保つこと)に逆行します。 –
@Stephen Muecke私はこのようなコードでHttpRequest '/ Track/Contact'を作成し、目的のビューをレンダリングします。それは私が期待したものですが、うまくいきません。 – Zet