Xpages - Добавление тега привязки к столбцу в представлении Notes

Я хочу добавить ссылку в столбец в 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

Я смог устранить ошибку, выполнив следующее, но не смог вызвать событие 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 ответа

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

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

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

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

Если вы посмотрите на генерируемый вами 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>

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

Другие вопросы по тегам