2012-01-27 14 views
0

私の剃刀ビューでこのカスタムヘルパーを使用しました。フォームから値を取得するためのカスタムHTMLヘルパー拡張のJquery

@Html.Link("OpenewWindow", Constants.Value, new { k = Constants.k, Staff_ID = LoginHelper.GetLoggedInUser() }, new { id = "mytag", target="_blank" }) 

私はこのリンクをクリックしてください、それは私のクエリ文字列ConstantValue/Constants?=someValue&Staff_ID=UserLoggedName.と新しいウィンドウが開きます

私は、フォーム上のラジオボタン選択値を選ぶとのQueryStringでチェック値を渡したいです。

そこで、カスタムヘルパーメソッドでJquery関数を使用して、フォームから値を選択できます。

カスタムヘルパーメソッドは、この種の威嚇を受けます。

public static IHtmlString Link(this HtmlHelper htmlHelper, string linkText, string baseUrl, object query, object htmlAttributes). 

答えて

1

これを行うにはjavascriptを使用できます。たとえば、あなたがリンクのclickイベントをサブスクライブでき、その後、新しいクエリ文字列パラメータを追加することによって、ポップアップウィンドウを開きます。

$(function() { 
    $('#id_of_link').click(function() { 
     var url = this.href; 
     if (url.indexOf('?') > -1) { 
      url += '&'; 
     } else { 
      url += '?'; 
     } 

     // get the value of the radio button 
     var value = $(':radio[name="name_of_your_radio_groups"]:checked').val(); 
     url += url + 'radiovalue=' + encodeURIComponent(value); 
     window.open(url, 'newwindow'); 

     // cancel the default action 
     return false; 
    }); 
}); 

JavaScriptを使用する必要がない場合は、クリーナーのアプローチは、使用することですフォームをリンクの代わりに使用します。これにより、選択したラジオボタンの値が自動的に送信されます。

関連する問題