2016-05-23 22 views
0

以上を要求したとき、私は、AJAXリクエストを持っているパラメータ値にasp.net MVCのjQueryのAJAXリクエストは、私は以下の方法MVCコントローラを持っている、私は一度

 onLanguageSelection: function() { 
      $("#submitLocalizationVm") 
       .click(function (event) { 
        var localizationId = $("#surveySectionsLocalizationList option:selected").val(); 
        var surveySectionId = $("#SurveySectionId").val(); 
        if (localizationId) { 
         LinkAjax.ajaxRequest($localizationEditVmUrl += surveySectionId + "&localizationId=" + localizationId, 
         "random data", 
         "localizationPartial", 
         null, 
         null, 
         localizationSelectList.populateLocalizationViewModel); 
        } 
       }); 
     }, 

を添加します。

public string GetEditLocalizationInformation(Guid surveySectionID, Guid localizationId) 
     { 
      //... 
      return new JavaScriptSerializer().Serialize(model); 
     } 

エラーが発生しました。私が最初にparmae​​ters surveySectinID = 2 and localizationId = 3とリクエストして成功しました。もし私がパラメータメーターsurveySectinID = 2 and localizationId = 4でページをリフレッシュせずにもう一度リクエストすると、localizationIdはリクエストの両方の値を連結し、34になります。ここで何が起こっているのですか? ajaxリクエストが正しい値を送信しています。

+0

ajaxが正しいデータを送信していますか?どのようにそれを確認しましたか? – SamGhatak

+0

開発ツールを使用してください。送信されているlocalizationIdの値が最初のリクエストで3回、2番目のリクエストで4回だけであることがわかります。 –

+0

コントローラでは、連結された値として値を取得しますか?そこに 'Request.QueryString'の値は何ですか? – SamGhatak

答えて

1
LinkAjax.ajaxRequest($localizationEditVmUrl += surveySectionId + "&localizationId=" + localizationId, 

上記の行に問題があります。 $ localizationEditVmUrl変数はグローバルに見えます。パラメータを連結しているため、次のAJAXリクエストには追加のパラメータがあります。このように変更してください。

LinkAjax.ajaxRequest($localizationEditVmUrl + surveySectionId + "&localizationId=" + localizationId, 
関連する問題