2016-10-26 8 views
0

я следующий сценарий -RadNumericTextbox автоматически изменяет значение, когда не в диапазоне

Это мой HTML элемент

<telerik:RadNumericTextBox ID="percangeTextBox" Width="200px" ClientIDMode="Static" runat="server" Enabled="true" Type="Percent" 
       MinValue="0" MaxValue="100"> 
        <Clientevents onerror="HandleError" /> 
      </telerik:RadNumericTextBox> 

И я хочу, чтобы выскочить свое собственное сообщение, если значение не колебалось было введено , кроме того, я хочу остановить раздражающее автоматическое изменение стоимости после того, как было введено неверное значение. Поэтому у меня есть эта функция:

function HandleError(sender, eventArgs) { 
        var inputValue = eventArgs.get_inputText(); 
        var minValue = sender.get_minValue(); 
        var maxValue = sender.get_maxValue(); 
        // out of range 
        if (eventArgs.get_reason() === 2) { 
         sender._invalid = true; 
         sender.updateCssClass(); 
         var oWnd = $find("<%= RadWindowManager1.ClientID %>"); 
         oWnd.set_title("Invalid parameter"); 
         oWnd.radalert("Percentage must be between " + minValue + "-" + maxValue + "."); 
         eventArgs.set_cancel(true); 
        } 
       } 

Когда 100+ значение вводится текст меняется на 100, а когда 0. вводятся изменения текста в 0. Как я могу изменить это и сохранить первоначальное значение? Я попытался изменить значение, но он меняет обратно ....

+0

Вы можете попробовать использовать 'OnValueChanged' и удалить MinValue и MaxValue. [См. Здесь] (http://docs.telerik.com/devtools/aspnet-ajax/controls/input/client-side-programming/events/onvaluechanged) – ltiveron

ответ

0

добавить в HTML следующий атрибут: AllowOutOfRangeAutoCorrect = "false". Другая возможность - добавить Clientevent для размытия и изменить значение там вручную.

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

  • Нет связанных вопросов^_^