2013-02-04 2 views
0

나는 PHP 우리가 쉽게 HTML 배열 요소를 처리하기 위해 이런 식으로 뭔가를 만들 수 있습니다 알고핸들 HTML 배열 입력 요소는

<input name="test[0]" value="1" /> 
<input name="test[1]" value="2" /> 
<input name="test[2]" value="3" /> 

다음 코드에서 나는 배열로이 액세스 할 수 있습니다

$arrElements = $_POST['test']; 
echo $arrElements[0]; // prints: 1 

나는 ASP.NET (Web Applications)에서 동일한 작업을 수행하려고 노력해 왔습니다. 그러나 불행하게도이 또한 쉽지 않습니다.

var test = Request.Form.GetValues("test"); 

을하지만이 testnull되는 결과 : 나는 위와 같은 HTML을 사용하는 경우

그래서, 나는 다음 내 코드 숨김에서 다음을 수행했습니다. PHP와 같이 HTML 배열 요소를 처리 할 수 ​​있습니까? 뒤에

<input name="test" value="1" /> 
<input name="test" value="2" /> 
<input name="test" value="3" /> 

코드 :

+0

는 u는 서버 컨트롤로 추가 할 수 있습니까? ID를 사용하여 액세스 할 수 있습니까? – Rajneesh

+0

@Rajneesh 아니, 할 수 없다. – Vivendi

+0

이 게시물을 체크 아웃 했나요? http://stackoverflow.com/questions/8973459/getting-values-of-html-form-elements-in-asp-net-added-dynamically-via-jquery? – Rajneesh

답변

1
은 HTML을 변경

var test = Request.Form.GetValues("test"); 

그리고 지금 당신은 테스트 VAR의 값의 배열을 얻을 것이다.

당신이 HTML을 변경할 수 없습니다 당신이 코드를 사용할 수있는 경우 :

var testList = new List<string>(); 
foreach (string key in Request.Form.AllKeys) 
{ 
    if (key.StartsWith("test[") && key.EndsWith("]")) 
    { 
     testList.Add(Request.Form[key]); 
    } 
} 
+0

코드에 표시하고있는 것처럼 키를 제공하고 싶습니다. 이것은 배열을 제공하지만 키를 지정하고 다차원 배열을 만들 수도 있습니다.'name = "test [2] [4]'" – Vivendi

+0

AllKeys 컬렉션을 파싱해야합니다. 두 번째 예제와 비슷한 배열을 만들고 채 웁니다. 하지만 당신이 이전의 PHP 도구를 익히고 asp.net 방식을 사용하고 서버 컨트롤을 사용하도록 익숙하지 않으려면 ASP.NET 세계에서 이전의 PHP 사용자 인 경우 html을 변경할 수없는 경우에만이 작업을 수행하십시오 –