Xpages - Добавление тега привязки к столбцу в представлении Notes - PullRequest
0 голосов
/ 17 мая 2018

Я хочу добавить ссылку на столбец в Notesview, я видел пример на searchdomino , когда я попытался, произошел сбой с ошибкой «Оператор или точка с запятой ожидались, но ни одна не была обнаружена», все остальные усилия оказываются неудачными.

Ниже приведен пример из searchdomino:

<a href='#' 
onClick="window.open('/"+@WebDbName+"/Employee/"+@Text(@DocumentUniqueID)+"?deleteDocument ','_new');window.location.reload()">Delete</a>

С ошибкой:

An operator or semicolon was expected but none was encountered

enter image description here

Я смог устранить ошибку, выполнив приведенную ниже процедуру, но не смог вызвать событие onclick.

"<a href='#' onClick='window.open'>" + "/"+@WebDbName+"/employee.xsp?action=openDocument&documentId="+@Text(@DocumentUniqueID) + "</a>"

Ваш вклад будет оценен.

Вставка значений столбца notesview в html-таблицу, пример кода:

 if(entryData[j].getAttribute("columnnumber") == "1") {            
    var xpageName = "page.xsp";
    var sURL = strURL[0] + ".nsf/" + xpageName + "?documentId=" + viewEntry[i].getAttribute("unid") + "&action=editDocument";

    result += "<tr> ";

    if(entryData[j].childNodes[1].childNodes.length == 0) {
        result += "<td><a href='" + sURL + "'>(NO_VALUE)</a></td>"
    } else {
        result += "<td><a href='" + sURL + "'>" + entryData[j].childNodes[1].childNodes[0].nodeValue + "</a></td>"
    }
} else {
    if(entryData[j].childNodes[1].childNodes.length == 0) {
        result += "<td>&nbsp;</td>"
    } else {
        result += "<td>" + entryData[j].childNodes[1].childNodes[0].nodeValue + "</td>"

    }
}

Ответы [ 2 ]

0 голосов
/ 17 мая 2018

У вас есть три уровня цитирования, поэтому я думаю, что это то, что вам нужно:

{<a href='#' onClick="window.open('/}  + @WebDbName +  {/Employee/} +@Text(@DocumentUniqueID)+ {?deleteDocument ','_new');window.location.reload()">Delete</a>}

То есть, это использует ...

  • {} для цитирования значения строки формулы
  • "" для цитирования значения атрибута onClick в значении строки формулы
  • '' для цитирования значений аргумента window.open в значении атрибута onClickв пределах значения строки формулы.
0 голосов
/ 17 мая 2018

Если вы посмотрите на генерируемый HTML-код, то увидите, что вы не передаете аргументы в window.open. Ваш код:

"<a href='#' onClick='window.open'>" + "/"+@WebDbName+"/employee.xsp?action=openDocument&documentId="+@Text(@DocumentUniqueID) + "</a>"

Это будет выглядеть примерно так:

<a href='#' onClick='window.open'>/database.nsf/employee.xsp?action=openDocument&documentId=26176F6E8AC2362E3</a>

Вам нужно переместить URL-адрес в событие onClick, например:

<a href='#' onClick='window.open("/database.nsf/employee.xsp?action=openDocument&documentId=26176F6E8AC2362E3")'>Click this link</a>

Или почему не только это: Нажмите на эту ссылку

...