문제

바로 아래에 표시 양식과 목록 웹 파트가 있습니다.사용자가 해당 목록 웹 파트에서 "새 항목 추가"를 클릭하면 값이 자동으로 채워지도록 하고 싶습니다.

디스플레이 양식의 URL에는 다음이 포함됩니다. DispForm.aspx?ID=1, 그러나 NewForm.aspx를 열 때 해당 ID로 필드를 자동으로 채우고 싶습니다.해당 ID를 NewForm으로 전달하거나 적어도 거기에서 검색할 수 있는 해당 URL로 전달할 수 있습니까?전달되는 것으로 보이는 것은 표시 양식이 포함된 목록 이름뿐입니다.

도움이 되었습니까?

해결책

설정에 따라 NewForm.aspx 페이지는 대화 상자 (iframe)에서 열리거나 새 페이지에서 열 수 있습니다.

여기서는 내 주문 라이브러리 에서이 문제를 해결하는 방법입니다. ID를 URL에 전달하지는 않지만 대신 다음 단계를 따르는 newform.aspx에서 스크립트를 실행합니다.

  1. 새 양식이 열리면 상위 창을 확인하십시오
  2. 상위가있는 경우 (대화 상자) ID는 윈도우에 포함되어 있습니다. parent.location.href
  3. 상위가 존재하지 않는 경우 (새 페이지), 윈도우를 확인하십시오.

    참고 : 실제로 NewForm.aspx 페이지가 둘 이상의 디스플레이 양식에서 열 수 있습니다.따라서 ID=에서 단순히 분할하는 것보다 더 정교한 것을 필요로 할 수 있습니다.

다른 팁

DispForm.aspx의 쿼리 문자열에서 ID 매개 변수를 구문 분석 할 수 있습니다. ID 값을 "새 항목 추가"링크를 업데이트하고 DispForm.aspx에서 ID를 통과 할 수 있습니다.

JavaScript에서 쿼리 문자열을 구문 분석하고 URL을 구문 분석하고 값을 얻으려면쿼리 문자열.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 sharepoint.stackexchange
scroll top