0
문자열을 작성하고 문자열의 올바른 위치에 값 (0 또는 1 라디오 확인란)을 설정하려고합니다. 문자열을 만들고 배열 위치에 따라 값을 설정합니다. 주어진 ID 위치에서 설정해야합니다. 이드 위치의 INT accessID 설정된다문자열의 올바른 위치에 값을 설정하십시오.
Response.Write(perm + " - " + Request.Form[perm] + "<br />");
이 기록 출력은 다음
access_1 - 0
access_30 - 0
access_6 - 1
access_34 - 0
access_31 - 0
access_37 - 0
access_2 - 0
access_23 - 0
access_28 - 0
access_35 - 0
access_36 - 0
그리고
Response.Write(inputPerms + "<br>");
쓰기 출력 :
0#0#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#
access_6이 값을 갖는다 체크 한 테이블에서 1로 설정됩니다. 3 열의 라디오 입력을 편집하여 문자열의 세 번째 위치에 설정했습니다. 이 순서대로 작동하며 액세스 ID 위치에 따라 문자열에 설정하려고합니다. 따라서 access_6은 올바른 위치에 1을 설정해야합니다.이 경우는 여섯 번째 여야합니다. 문자열의 올바른 위치에 값을 설정하려면 어떻게해야합니까? 어떤 도움이 분명하다
0#0#0#0#0#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#
희망, 감사 - (access_6) 6 위치 : 출력 문자열이 대신해야한다. 여기에 코드입니다 :
if (Request.Form["updatePerm"] != null && Request.QueryString["action"]=="update")
{
foreach (string perm in Request.Form)
{
string input = perm.Substring(0, perm.IndexOf("_") + 1);
if (input == "access_")
{
string accessRef = perm.Replace("access_", "");
int accessID = Convert.ToInt32(accessRef) + 1;
Response.Write(perm + " - " + Request.Form[perm] + "<br />");
string chkInputs = Request.Form[perm];
inputPerms += !string.IsNullOrWhiteSpace(chkInputs) ? chkInputs + "#" : "";
}
}
Response.Write(inputPerms + "<br>");
}
, 당신은 ('고정 된 배열을 만들 수 있습니다 INT [] accessArr = INT [30]') 그리고 설정시'accessID'를 인덱서로 사용하십시오. 'foreach'가 항상 순서대로 값을 줄 것이라는 것을 알고 있다면'List' –
Enfyve
덕분에 이해할 수 있지만 어떻게 구현할 수 있을지 모르겠다. 어떻게 보여줄 수 있니? –