2016-08-18 5 views
1

にあるチェックボックスの値を取得し、気圧、私は私の.cshtmlビューで次のようにHTMLとJavaScriptのコードを持っているASP.NET私はasp.netでかなり未経験だC#の方法

<div class="jumbotron"> 
</div> 
<div class="row"> 
    <h2>Select the records you want to export into an excel sheet.</h2> 
    <hr /> 
    <form name="recordSelection" method="POST" action="" > 
     <p>Press the "Download" button after you've selected the needed records.</p> 
     <blockquote> 
      <input type="checkbox" name="record" value="German Sales Office"/> German Sales Office<br/> 
      <input type="checkbox" name="record" value="UK Sales Office"/> UK Sales Office<br/> 
      <input type="checkbox" name="record" value="France Sales Office"/> France Sales Office<br/> 
      <input type="checkbox" name="record" value="Spain Sales Office"/> Spain Sales Office<br/> 
      <input type="checkbox" name="record" value="Hoofddorp Office"/> Hoofddorp Office<br/> 
      <input type="checkbox" name="record" value="Brussels Office"/> Brussels Office<br/> 
     </blockquote> 
     <hr/> 
     <input id="dlBttn" name="submitButton" type="submit" value="Download" onclick="GetCheckboxValues();"/> 
    </form> 
</div> 

<script type="text/javascript"> 
    function GetCheckboxValues(form) { 
     var checkedValues = []; 
     var offices = document.getElementsByName('record'); 
     for (var i = 0; offices[i]; i++) { 
      if (offices[i].checked) { 
       checkedValues.push(offices[i].value); 
      } 
     } 
    } 

</script> 

は私がの値が必要チェックボックスをチェックして、データベースから取得しなければならないレコードを確認し、それらのレコードを含むExcelシートを作成します。しかし、私はこれらの値をC#コードにどうやって取得するのか分かりません。私のjavascriptコードからC#メソッドを呼び出す方法のアドバイス?またはコントローラActionResultなどを作成する必要がありますか?

+0

1)チェックボックスの値を取得する方法2)サーバーに値を送信する方法3)サーバーで値を処理する方法。一度に1つの質問を投稿するように質問を編集してください。 – randominstanceOfLivingThing

+0

それはうんざりですが、すべてが1つのプロセスで接続されているので、私はそれを投稿することができると思いました。私は私の "GetCheckboxValues"機能でチェックボックスの値を取得すると思いますが、今私はどのように処理するか分からない。あなたが言ったように、それらの値を私のスクリプトからサーバに送り、それ以降の処理を行います。 – FabianJ

+0

onclickクライアントサイドハンドラを追加しないと、すべてのフォームがサーバに送信されます。次に、サーバー上のチェックボックスにアクセスできます。 – neo

答えて

0

私はコメントからのアドバイスを参考に問題を解決しました。私のフォームのaction属性をaction="@Url.Action("ExportData","MyController")"に指定して、フォームpublic ActionResult ExportData(string[] record)に投稿しました。チェックボックスの値をクライアントからサーバーに取得し、残りのコードを処理できるようにする。 (何も役に立たなかったのでスクリプトも削除しました)