2016-07-06 17 views
0

コードビハインド(C#)に値を渡しています。私は多くを研究し、このコードを使用しましたが、それは私のためには機能しませんでした。以下は私が使用したコードです。コードビハインドでのAjaxを使用したバルク配列値へのアクセス

私はroutes.EnableFriendlyUrls(settings);近くでエラーを取得していますの背後にあるコード(C#の)の値を渡す必要がありますが、このコードを使用して:

スクリプト:

<script> 
    function foo() { 
     var values = ["1,", "2", "3"]; 

     // Make the Ajax call 
     $.ajax({ 
      type: "POST", 
      url: "Default.aspx/Done", // the method we are calling 
      contentType: "application/json; charset=utf-8", 
      data: {values : JSON.stringify({ arr: values })}, 
      dataType: "json", 
      success: function (result) { 
       alert('Yay! It worked!'); 
      }, 
      error: function (result) { 
       alert('Oh no :('); 
      } 
     }); 
     return false; 
    } 
</script> 

HTML:

<form id="form1" runat="server"> 
    <div> 
     <asp:Button ID="Button1" runat="server" Text="Button" UseSubmitBehavior="false" OnClientClick="return foo();" /> 
    </div> 
</form> 

コード:

public static void RegisterRoutes(RouteCollection routes) 
    { 
     var settings = new FriendlyUrlSettings(); 
     //settings.AutoRedirectMode = RedirectMode.Permanent; 
     routes.EnableFriendlyUrls(settings); 
    } 
} 

[WebMethod] 
public static void test(string[] arr) 
{ 

} 

私はコードの後ろにエラーがありましたが、私は何のエラーも出ませんし、ブレークポイントを置いてもコードに戻ることができません。このコードを実行するとボタンが表示されます。このボタンをクリックすると、そのボタンをクリックするたびにページがリフレッシュされることを除いて、発生しません。これどうやってするの?

+0

あなたは 'だけでなく背後にあるコードでは、' [] int型を取得する必要がありますので、整数配列を渡しています。これを変更してください: 'public static void RegisterRoutes(int [] values)' – Sachin

答えて

0

変更:

var values = [1, 2, 3];//your array wasn't valid 

data: {values : values},//you don't need to stringify the values because we have a valid json syntax 
+0

詳細を編集してください。コード専用と「試してください」の回答は、検索可能なコンテンツが含まれていないため、推奨されません。なぜ誰かが「これを試してみる」べき理由を説明しません。私たちはここで知識のためのリソースとなるよう努力しています。 – abarisone

関連する問題