4

Моя настройка такова: Пользовательская страница на сайте Sharepoint 2010 с веб-частью списка просмотра и веб-частью просмотра данных. Когда я выбираю элемент в LVWP, я хочу отфильтровать DVWP с помощью значения поля многопользовательского поиска. Поэтому я подключился к двум веб-частям таким образом, что DVWP получает параметр из LVWP. Я фильтрую DVWP следующим образом:Фильтрация DVWP с помощью xslt с параметром из подключенного LVWP в конструкторе Sharepoint

<xsl:variable name="Rows" select="/dsQueryResponse/Rows/Row[contains($pDataAftaleID,concat(@ID,';#',@ID))]"/> 

где pDataAftaleID - это параметр из LVWP.

Моя проблема: все работает хорошо, если выбранный элемент из LVWP имеет значение в поле параметра, но если это не так, Sharepoint, похоже, не записывает значение null/empty или zero в параметр и параметр фильтра сохраняет значение из последнего выбранного элемента в LVWP со значением, и поэтому DVWP показывает элементы из предыдущего выделенного элемента, а не «нет элементов для отображения».

Есть ли способ принудительно записать пустое поле или установить параметр равным нулю каждый раз, когда загружается DVWP? Какие-либо предложения?

ответ

0
<xsl:variable name="Rows"> 
    <xsl:choose> 
    <xsl:when test="/dsQueryResponse/Rows/Row[contains($pDataAftaleID,concat(@ID,';#',@ID))]"> 
     <xsl:text>/dsQueryResponse/Rows/Row[contains($pDataAftaleID,concat(@ID,';#',@ID))]</xsl:text> 
    </xsl:when> 
    <xsl:otherwise> 
     <xsl:text>0</xsl:text> 
    </xsl:otherwise> 
    </xsl:choose> 
</xsl:variable> 

Пожалуйста, проверьте это или измените это для вас.

 Смежные вопросы

  • Нет связанных вопросов^_^