2016-09-16 2 views
0

Как я могу динамически передавать идентификатор управления asp.net в параметр функции jquery? вот как я пытаюсь сделать чтоПередача идентификатора элемента управления asp.net для функции jquery по параметру

SelectedDivAnimation('#'+<%=txtFirstName.ClientID%>); 
SelectedDivAnimation('#'+<%=txtLastName.ClientID%>); 

function SelectedDivAnimation(aspControl) { 
     $(controlid).on('focus', function() { 
      $(this).css({'width':'100%','transition':'1s'}); 
     }); 
     $(controlid).on('focusout', function() { 
      $(this).css({ 'width': '50%', 'transition': '1s' }); 
     }); 
    } 

я даже попробовать этот

SelectedDivAnimation('#<%=txtFirstName.ClientID%>'); 
SelectedDivAnimation('#<%=txtLastName.ClientID%>'); 

, когда я запускаю это не работает, как ожидалось, и ничего не происходит.

+0

Возможно ли вы предоставить немного больше информации о структуре вашей страницы? –

ответ

0

Все между <% и %> происходит на сервере, так что все, что вам нужно сделать, это падение + и переместить вторую цитату после %> -

SelectedDivAnimation('#<%=txtFirstName.ClientID%>'); 
SelectedDivAnimation('#<%=txtLastName.ClientID%>'); 

Предполагая, что он находится в странице ASP.

Поэтому предположим, что txtFirstName.ClientID установлен на client_a сервер заменит <%=txtFirstName.ClientID%> с client_a перед его отправкой клиенту. Таким образом, клиент будет на самом деле увидеть это -

SelectedDivAnimation('#client_a'); 

Если вы видите правильные идентификаторы на клиентском компьютере, то это хорошо, однако у вас есть еще одна проблема -

function SelectedDivAnimation(aspControl) { 
    $(controlid).on('focus', function() { 
     $(this).css({'width':'100%','transition':'1s'}); 
    }); 
    $(controlid).on('focusout', function() { 
     $(this).css({ 'width': '50%', 'transition': '1s' }); 
    }); 
} 

Вы передаете переменную aspControl в вашей функции однако вы используете переменную, называемую controlid; вы, вероятно, хотите, чтобы они были одинаковыми, то есть -

function SelectedDivAnimation(aspControl) { 
    $(aspControl).on('focus', function() { 
     $(this).css({'width':'100%','transition':'1s'}); 
    }); 
    $(aspControl).on('focusout', function() { 
     $(this).css({ 'width': '50%', 'transition': '1s' }); 
    }); 
} 
+0

Я сделал это, но он не работает –

+0

@JahanAhmedAbbasi Является ли ваш код на странице asp или js? –

+0

мой код находится в asp странице –

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