2009-12-18 4 views
1

jQuery를 사용하여 동적으로 새 항목 (테이블의 행)을 만드는 버튼이 있습니다. 각 항목은 html 표의 행입니다. 각 행 jquery/asp.net mvc를 사용하여 동적으로 생성 된 필드를 게시하는 방법

각 열은 입력 (텍스트 박스, 라디오 버튼, 체크 박스 등)

는 이러한 열의 일부 어레이 또는 컬렉션 결국 원하는만큼 열을 추가 할 수 있기 때문에있다.

양식을 게시 할 때 formscollection에서이 데이터가 보이지 않고 이러한 컨트롤을 바인딩 용 데이터 개체로 변환하는 방법을 잘 모릅니다.

  1. 어떤 동적으로 생성 된 컨트롤에 문제가 있는지가 양식 게시물에 표시하고 있는가 :

    그래서 본질적으로이 개 질문이 있습니까?

  2. 데이터의 테이블 구조를 내 컨트롤러로 전달하는 방법은 무엇입니까? 나는 거의 각 레코드가 어떤 레코드 객체를 나타내도록하고, 그런 일이 가능하다면 레코드 컬렉션을 컨트롤러에 전달하려고한다.

의견이 있으십니까?

답변

1

: 바인딩 배열)

는 당신의 조치 방법에 대한 귀하의 signatture는 일부처럼됩니다

텍스트 상자의 이름이 "MyRecord.MyList [0] .Field1"과 같은지 확인하십시오. MVC는이를 자동으로 열거 형으로 끌어 올립니다. 귀하의 자바 스크립트에 대한 추가, 그냥 각 추가 된 행이 제대로 증가 된 색인 (예 : "MyRecord.MyList [1] .Field1"라는 새 필드) 있는지 확인하십시오.

+0

id 나 테이블 자체의 이름이 중요하거나 asp.net mvc가 무시합니다. .? – leora

+0

내가 개체를 한정하려면 MYRecord를 포함하지 않는 것처럼 보입니다 .. 이제는 작동합니다. – leora

0

동적으로 생성 된 요소가 양식 태그 사이에 있는지 확인해야합니다.

기본 모델 바인딩은 'Thing [3] .Name'과 같은 방식으로 필드의 이름을 지정하면 개체 배열에 바인딩됩니다 (네 번째 행의 이름 필드 인 0 콜을 얻으려면

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult MethodName(thing[] things) 
{ 
    ... 
} 

친절,

0

각 행의 ID가 고유해야하지만 양식에 서버에 게시하는 경우 다시 게시해야합니다 ... 게시물을 어떻게 작성하고 있습니까? JQuery로 포스트를하고 있습니까?

관련 문제