Передача переменных в событие onclick - PullRequest
0 голосов
/ 17 мая 2018

У меня есть следующий элемент span, определенный в представлении в приложении MVC

<span id="openDocument" 
      class="fa fa-sign-in" 
      style="cursor:pointer; 
      color:#5d9cec" 
      data-toggle="tooltip" 
      onclick="openDocument(@item.formattedReference.ToString())")>
</span>

Функция Javascript:

function openDocument(documentId) {
    debugger;
    window.open("https://somelongURL/documentId=" + documentId);
};

Проблема с этим кодом заключается в том, что этот код работает для идентификатора документа, который имеет номера (например, 12345), но не работает для буквенно-цифровых номеров (например, R12345).

Это дает мне сообщение об ошибке: Uncaught Reference Error: R12345 is not defined.

Как мне решить эту проблему?

Заранее спасибо.

1 Ответ

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

Попытайтесь поместить вашу переменную в кавычки:

<span ... onclick="openDocument('@item.formattedReference.ToString()')"></span>

В отличие от чисел, строки могут быть переданы только в кавычках.

Объяснение:

Uncaught Reference Error: R12345 не определен.

Сообщение об ошибке содержит всю информацию об отладке, а именно, что переданное значение интерпретируется как переменная, как только оно содержитбуквы.R12345 было интерпретировано как переменная.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...