JavaScript getElementById для Управления ASP.NET возвращает пустой указатель?

Они оба запишут соответствующий символ (символы) конца строки. В дополнение к этому endl заставит буфер фиксироваться. Вы обычно не хотите использовать endl при выполнении файлового ввода-вывода, потому что ненужные фиксации могут повлиять на производительность.

12
задан 7 April 2012 в 22:57
поделиться

5 ответов

Это:

function ConfirmTransfere() {
        if (confirm("Syatem not allow negative inventory, would you like to continue ?") == true) {
            document.getElementById("btnAlelrt").click();

        }       

должно быть таким:

function ConfirmTransfere() {
        if (confirm("Syatem not allow negative inventory, would you like to continue ?") == true) {
            document.getElementById('<%=btnAlert.ClientID%>').click();

        }     

Проблема в том, что ваша кнопка является элементом управления ASP.Net и будет генерировать свой собственный идентификатор клиента, который будет отличаться от идентификатора вы указали. ввод кода <% = btnAlert.ClientID%> Отправит созданный код в браузер.

25
ответ дан 2 December 2019 в 03:43
поделиться

ID, который вы даете asp: Button - это ID, который используется на сервере ASP.Net. Это не идентификатор, который используется клиентским скриптом.

Вы должны использовать:

document.getElementById("<%= btnAlelrt.ClientID %>").click();
3
ответ дан 2 December 2019 в 03:43
поделиться

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

ASP.NET не использует идентификатор, который вы даете объект / элемент / кнопка, когда он записывает его на страницу, вместо этого он присваивает объекту идентификатор клиента.

Если вы используете Msgbox (btnAlelrt.clientID) в своем коде, вы увидите имя объекта, которое должен использовать ваш javascript.

1229] Лучше, чтобы код .NET записывал эти значения в javascript на страницу, поскольку они не являются константами.

Надеюсь, это поможет.

Джеймс

1
ответ дан 2 December 2019 в 03:43
поделиться

Если вы просмотрите исходный код на созданной вами странице, вы, вероятно, обнаружите, что кнопка больше не имеет идентификатора «btnAlelrt». Это может быть что-то вроде «ctl001_btnAlert» или какой-либо другой сгенерированный идентификатор уникальности.

Вот почему ваш javascript не находит его.

Вам нужно будет выполнить поиск по тегу и проверить идентификаторы, они заканчиваются на btnAlelrt, или вам придется поместить вокруг него DIV или SPAN с идентификатором, который не будет изменен (т.е. не имеет runat = "server"). Затем вы можете найти этот элемент по его идентификатору, а затем получить внутри него кнопку.

Если возможно, вы можете использовать синтаксис <% = btnAlelrt.ClientID%>, чтобы вставить правильный идентификатор в свой javascript.

] (SIDENOTE: это должно было быть btnAlert?)

3
ответ дан 2 December 2019 в 03:43
поделиться

Если вы посмотрите на отображаемую страницу, элемент управления с именем btnAlelrt больше не имеет этого имени ...

Если вы добавите «<% =», вы сможете получить доступ к имени C # для элемент управления, и он должен работать.

1
ответ дан 2 December 2019 в 03:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: