ASP.NET MVC 응용 프로그램의 라디오 버튼 그룹에서 선택한 요소를 가져오는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/1629115

문제

내 ASP.NET MVC 응용 프로그램에는 각 그룹에 해당하는 링크가 있는 2개의 라디오 버튼 그룹이 있습니다.

아래는 더 나은 명확성을 위한 스크린샷입니다.

대체 텍스트 http://img21.imageshack.us/img21/7959/radiogroups.png

적절한 링크를 선택하면 특정 그룹과 관련된 값이 컨트롤러 작업에 전달되어야 합니다.

예를 들어 위의 경우 "링크 1"을 클릭하는 동안 A1 또는 A2 값이 컨트롤러 작업 메서드에 전달되어야 합니다.

적절한 작업 방법에 대한 게시를 시도했지만 두 번째 링크와 관련된 값도 전달됩니다.클릭한 링크에서 선택한 값만 가져오려면 어떻게 해야 합니까?

도움이 되었습니까?

해결책

링크의 href로 자바스크립트 함수를 사용하겠습니다.해당 라디오 버튼 그룹의 선택된 값을 읽고 이를 URL 문자열에 추가합니다.window.location을 설정하거나 양식 작업을 설정하고 제출할 수 있습니다.

다른 팁

JavaScript를 사용하면 양식을 제출하기 전에 다른 라디오 버튼의 값을 지울 수 있습니다.

다른 솔루션은 숨겨진 필드를 갖고 링크를 클릭 할 때마다 JavaScript를 사용하여 적절한 값으로 채우는 것일 수 있습니다. 그런 다음이 필드의 가치를 얻고 Radiobuttons를 잊어 버립니다.

두 개의 라디오 버튼과 관련 링크를 별도의 양식에 넣으십시오. 링크를 제출 버튼으로 바꾸거나 (링크처럼 보이려면 이미지 제출). 따라서 동일한 컨트롤러 동작에 게시하는 두 가지 양식이 있습니다. 제출 버튼을 제공하십시오 name 액션 내에서 사용하여 클릭 한 버튼을 결정할 수 있습니다. 숨겨진 필드를 사용할 수도 있습니다. 작업에서 가장 먼저해야 할 일은 클릭 한 버튼을 결정한 다음 라디오 버튼의 적절한 요청 값을 읽는 것입니다.

또 다른 대안은 두 개의 제출 버튼과 다른 이름으로 동일한 형식의 모든 것을 갖는 것입니다.

보다

@model MvcApplication2.Models.CountryModel
@using (Html.BeginForm())
{
            @Html.RadioButton("Gender", "Male" new { @checked = "checked" }) Male
            @Html.RadioButton("Gender", "Female")Female
            <input type="submit" text="submit"/>
}

모델

   public class CountryModel
    {
        public string Gender{ get; set; }

    }

제어 장치

public ActionResult Index()
{                    
    return View();
}
[HttpPost]
public ActionResult Index(CountryModel model)
{
    //for radio button
    CountryModel dd = new CountryModel();
    string date1 = model.RDB;
    return View(model);
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top