2013-08-16 2 views
1

Можно ли получить элемент HTML по его идентификатору в блоке кода Razor? например, некоторые, где в представлении этот элемент существует.get element by Id Использование синтаксиса Razor

<Input id='NameField' type='text'>

и далее вниз по мнению есть бритва кодового блока

@{ 
.... do some stuff 
.... etc. 
.... etc. 
.... etc. 

var nameTxtElement = GetElementById("NameField'); 

} 

Я знаю, как это сделать с помощью Jquery, но мне было просто интересно, если это можно сделать, используя бритву ?

Основная причина, заключающаяся в преобразовании веб-форм с кодом в MVC, без реализации полностью взорванной поддержки asp.net в моем приложении MVC.

+0

Бритва только генерирует текст. Это не имеет никакого смысла. – SLaks

+0

бритва не просто генерирует текст, вы можете создавать переменные, функции и т. Д. Внутри блока бритвы, вы даже можете динамически строить jquery (генерировать текст, да), но движок Razor может делать гораздо больше, или я надеюсь, что это возможно. – user2690768

+0

Все, что вы можете сделать, это помочь вам генерировать текст. Я хочу сказать, что у Razor нет ничего удаленного, напоминающего DOM. – SLaks

ответ

0

Что вы пытаетесь сделать, когда у вас есть var nameTxtElement? Вероятно, вы могли бы выполнить сценарий с помощью Razor, но вам, возможно, придется подумать немного иначе, чем если бы вы использовали WebForms. Например, вы можете сделать что-то вроде этого ...

@{ 
//... 
var cssClass = "something"; 
// ... 
} 

<input id='namefield' type='text' class='@cssClass' /> 

... если вы хотите динамически вставить класс CSS.

+0

в основном делает манипуляции с вводом, делает его только для чтения или устанавливает его значение или динамически добавляет валидацию. ключ не должен переписывать кучу существующего кода за логикой, но я думаю, что ваш пример может быть единственным способом выполнить задачу, опять же это просто переписывает кучу кода, который был протестирован и работает, я бы предпочел не делать этого. спасибо за ваш ответ Бен Х. – user2690768

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