2016-07-26 3 views
0

У меня есть одна проблема в моем проекте Asp.net Mvc 3. Я использую данные первого подхода и сильного типа. Я прячу одно значение на вид из модели, как,В Asp.net Mvc скрывать значение поля не может быть получено

@Html.TextBoxFor(model => model.myfield1, new { style=" display:none" }) 

, когда я получить это значение поля на Java Script я получаю нулевое значение или пустой.

var abc= s("#myfield1").val(); 
alert(abc) 

Я попытаюсь как

@Html.DisplayFor(model => model.myfield1, new{}) 

значение будет отображаться на виду. Я также пытаюсь использовать скрытое поле, но не работает

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

+0

Я принимаю его '$ (" # myfield1 "). val();' (не 's'). И если его возвращающий «null», то его, потому что ваше свойство «myfield1» равно «null» - проверьте html, что ваш генератор - он будет показывать 'value =" "'. Но если 'DisplayFor()' показывает значение, то это проблема 'ModelState', и вам нужно показать код в методах контроллера, связанных с этим представлением. –

ответ

1

Для полей с дисплеем: нет, похоже, что val() не работает.

я обойти это поведение с ATTR():

$('input').attr('value',myNewValue); 
+0

Конечно' .val() 'работает (попробуйте!). И если '.val()' возвращает 'null', тогда будет' .attr ('value') '- но вы код устанавливаете значение, а не получаете его –

0

, потому что сильно типизированных HTML помощник не может получить доступ, когда скрытый Вы можете использовать этот хелпер ниже вместо того, что вы используете сейчас @ Html.HiddenFor (m => m.myfield1) Этот помощник используется для сохранения скрытого значения в строго типизированном виде

+0

@ Naveen Ganeshe. Я стараюсь, как вы предлагаете, но это не Работа – Ajay

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