2009-09-22 4 views
0

안녕하세요, 저는 ASP.NET MVC를 처음 사용합니다. 클릭 할 때 값을 가져 오는 확인란이나 라디오 버튼을 처리하는 방법을 모르겠습니다. 아무도 나를 도울 수 있습니까? 나는 당신이 의미하는 바를 이해하는 데 도움이되는 간단한 코드를 제공하고 있습니다. 예제를 공유하십시오.CheckBOX ASP MVC

<script type="text/javascript" > 
    function check(browser) 
    { 
      document.getElementById("answer").value=browser; 
    } </script> 

<form action=""> 
     <input type="radio" name="browser" 
onclick="check(this.value)" 
value="Internet Explorer"/>Internet 
Explorer<br /> 
     <input type="radio" name="browser" 
onclick="check(this.value)" 
value="Firefox"/>Firefox<br /> 
     <input type="radio" name="browser" 
onclick="check(this.value)" 
value="Netscape"/>Netscape<br /> 
     <input type="radio" name="browser" 
onclick="check(this.value)" 
value="Opera"/>Opera<br /> 
     <br /> 
     Your favorite browser is: <input type="text" id="answer" 
size="20"/> </form> 

답변

0

하이 친구가 이것을 시도,

<asp:RadioButton ID="RadioButton1" runat="server" onmousedown="yourjsfunc();" /> 
+0

음 ... 대답은하십시오 ...? –

+0

코드는 꺾쇠 괄호 안에 있지만 SO 코드 블록에는 없습니다. – Powerlord

+0

이 코드는 ASP.Net MVC에서 작동하지 않습니다. 그것은 ASP.Net Web Forms 와만 작동합니다. –

0

나는 아마 당신의 질문을 받고 있지 않다, 그러나 당신의 샘플은 잘 작동합니다.

양식을 제출할 때 컨트롤러의 메소드가 asp.net이라고하면 mvc는 "browser"매개 변수를 선택한 라디오 버튼의 값으로 설정합니다.

1

컨트롤러 코드 것은

public ActionResult Index() 
    { 
    ViewData["list"] = new[] 
    { 
     new SelectListItem {Text = "InternetExplorer", Value = "InternetExplorer"}, 
     new SelectListItem {Text = "Firefox", Value = "Firefox"}, 
     new SelectListItem {Text = "Safari", Value = "Safari"}, 
     new SelectListItem {Text = "Opera", Value = "Opera"} 
    }; 

    return View(); 
    } 

    [AcceptVerbs(HttpVerbs.Post),ActionName("Index")] 
    public ActionResult IndexPost(string browser) 
    { 
    // ... 
    } 

보기 코드

<% using (Html.BeginForm()) { %> 
    <% foreach(var item in (IEnumerable<SelectListItem>)ViewData["list"]) { %> 

    <label> 
    <% = Html.RadioButton("browser", item.Value) %> 
    <% = item.Text %></label> 
    <% } %> 

    <input type="submit" value="Select" /> 
    <% } %> 

    <script type="text/javascript" src="<% = Url.Content("~/Scripts/jquery-1.3.2.js") %>" ></script> 
    <script type="text/javascript"> 
    $(function() { 
     $("form:first").submit(function(e) { 
     e.preventDefault(); 
     alert($(this).find(":radio:checked").val()); 
     }); 
    }); 
    </script> 

당신이 행동 브라우저 값을 원하는 경우에, 당신은 IndexPost 방법에 코딩. 또는 javascript, onsubmit 또는 onclick (및 기타) 이벤트 처리에서 jQuery에서 라디오 버튼 값을 가져옵니다.

+0

+1 위 코드는 제대로 작동하는 것처럼 보입니다. –

1

로직은 http://byatool.com/mvc/asp-net-mvc-how-to-handle-multiple-checkboxes-with-viewsactions-jquery-too/에서 가져 왔습니다. 나는 그것을 아주 조금만 수정했다.

---------- 
HTML Part| 
---------- 
{form action="/Test/CheckForIds/" method="post"} 
    {div} 
     {input type="checkbox" name="IdList" value="1" /} 
     {input type="checkbox" name="IdList" value="2" /} 
     {input type="checkbox" name="IdList" value="3" /} 
     {input type="checkbox" name="IdList" value="4" /} 
    {/div} 
    {div} 
     {input type="submit" value="go" /} 
    {/div} 
{/form} 

---------------- 
Controller Part| 
---------------- 

{AcceptVerbs(HttpVerbs.Post)} _ 
Function GroupPageSend(ByVal selectedObjects() As String) As ActionResult 
    {!--- YOUR CODE GOES HERE ---} 

    EX// 
     For Each item In selectedObjects 
      If i = 0 Then 
       string = Trim(item) 
       i = i + 1 
      Else 
       string = string & "," & Trim(item) 
      End If 
     Next 
End Function 

위의 확인란을 선택하면 값을 수집하고 결과를 관리 할 수 ​​있습니다.

마음 모두 {= < 모든} =>