문제

페이지에 두 개의 DataFormWebParts가 있습니다. 새 개체를 만드는 데 하나씩 편집 할 수 있습니다. 이를 만드는 웹 파트 가이 단추가 있습니다.

<input type="button" value="Save" name="btnSave0" onclick="javascript: {ddwrt:GenFireServerEvent('__commit;__refresh;__redirect={Page.aspx?SelectedID_x003D__x007B_@ID_x007D_}')}" />
.

다음과 같이 SharePoint Designer 2010에서 설정 한 버튼에 대한 조치 :

  • commit
  • 새로 고침
  • 페이지로 이동합니다 (동일한 페이지가 있지만 값으로 설정된 매개 변수 선택 ID가 설정됩니다. ', / dsqueryResponse / Rows / Row / @ id', '

    일어날 수있는 논리는 다음과 같습니다. 개체를 저장 한 다음 동일한 페이지로 리디렉션하지만 XSLTListViewWebPart에서 새로 생성 된 개체의 ID로 리디렉션하십시오.

    실제로 일어나는 일, 리디렉션 작업이지만 :

    https://domain.com/SitePages/Page.aspx?SelectedID=%27,/dsQueryResponse/Rows/Row/@ID,%27
    
    .

    두 가지 문제가 발생했습니다. 첫 번째 - 리디렉션 된 URL이 인코딩 된 것으로 보입니다.둘째, 매개 변수는 단순히 실제 매개 변수로 간주되지 않는 문자열로 간단합니다.

    누구든지 무슨 일이 일어나고 있는지 힌트를 줄 수 있습니까?

도움이 되었습니까?

해결책

이를 교체하십시오 :

<input type="button" value="Save" name="btnSave0" onclick="javascript: {ddwrt:GenFireServerEvent('__commit;__refresh;__redirect={Page.aspx?SelectedID_x003D__x007B_@ID_x007D_}')}" />
.

<input type="button" value="Save" name="btnSave0" onclick="javascript: {ddwrt:GenFireServerEvent('__commit;__refresh;__redirect={Page.aspx?SelectedID={@ID}}')}" />
.

이 작동하지 않으면 substring (@id, [start-index], [Length]) 또는 xslt 에서 substring (@id, [start-index], [Length]) 또는 하위 문자열 또는 하위 문자열을 사용할 수 있습니다.

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