В настоящее время я работаю над проектом ASP.NET MVC 3.Я сделал собственный шаблон редактора для отображения процентов.Вот код, который у меня есть.
public class MyClass
{
// The datatype can be decimal or double
[Percentage]
public double MyPercentage { get; set; }
}
Атрибут [Percentage] - это обычный атрибут HI Hint, который использует следующий код:
@model Object
@{
string fieldName = ViewData.TemplateInfo.HtmlFieldPrefix;
}
<div style="height: 24px;">
<div style="float: left;">
@Html.TextBox("", String.Format("{0:0.00}", Model), new
{
id = "txt" + fieldName,
@Class = "magnaNumericTextBox",
type = "magnaNumericType",
style = "width:230px"
})
%
</div>
<div style="float: left;">
<ul style="height: 24px; list-style: none; padding: 0px; margin: 0px; line-height: none;">
<li style="line-height: normal"><a id="btn@(fieldName)Up" class="magnaNumericButton button small">
˄</a> </li>
<li style="line-height: normal"><a id="btn@(fieldName)Down" class="magnaNumericButton button small">
˅</a> </li>
</ul>
</div>
</div>
<script type="text/javascript">
$("#btn@(fieldName)Up").click(function ()
{
ChangeNumericUpDownValue($('#txt@(fieldName)'), 1);
return false;
});
$("#btn@(fieldName)Down").click(function ()
{
ChangeNumericUpDownValue($('#txt@(fieldName)'), -1);
return false;
});
$('#txt@(fieldName)').keypress(function (e)
{
NumericUpDownKeyPress($(this), e);
return false;
});
</script>
Этот шаблон редактора используетчисловой валик вверх-вниз, который пользователь может использовать, если пожелает.Пользователь также может просто набрать номер самостоятельно, не используя функциональность «вверх-вниз».Функциональность javascript и все прекрасно работали некоторое время до вчерашнего дня.
Проблема теперь в том, что текстовое поле в шаблоне редактора не позволяет пользователю вводить его / ее собственное значение (делая его доступным только для чтения - хотя естьнет атрибута только для чтения в визуализированном html), только с помощью цифровых кнопок вверх-вниз.Я определил, что, если я удаляю атрибуты html из помощника текстового поля следующим образом:
@Html.TextBox("", String.Format("{0:0.00}", Model))
, что пользователь может снова добавить значение, введя его в текстовое поле.Что это может быть?Любая помощь или совет будут оценены.
Спасибо