2016-07-31 3 views
1

Я хочу взять только положительное число в моем RadNumericTextBox.Как принять только положительное число в RadNumericTextBox?

Я попытался

<telerik:RadNumericTextBox MinValue="0" TabIndex="8" ID="txtPositiveNumericField" runat="server" Width="98%"> 
      <NumberFormat DecimalDigits="0" /> 
    </telerik:RadNumericTextBox> 

Но до сих пор она принимает отрицательное число.

ответ

1

Я нахожу решение, используя функцию javascript. Добавьте ClientEvents для OnKeyPress в RadNumericTextBox и для этого события определите функцию javascript.

<telerik:RadNumericTextBox MinValue="0" TabIndex="8" ID="txtPositiveNumericField" runat="server" Width="98%"> 
     <NumberFormat DecimalDigits="0" /> 
     <ClientEvents OnKeyPress="NumberFieldKeyPress" /> 
</telerik:RadNumericTextBox> 

И Javascript функция:

function NumberFieldKeyPress(obj ,arg) 
     { 
      if(arg.get_keyCode()==45) 
      { 
       alert("This field only takes positive number."); 
       arg.set_cancel(true); 
      } 
     } 

Но если есть какие-либо трюк без JavaScript, пожалуйста, поставить свой ответ.

Спасибо ..

2

Что Telerik версии библиотеки вы используете? В моем случае все, что мне нужно было сделать, это , просто примените атрибут MinValue и установите его в 0. Я также добавил атрибут DataType, чтобы уточнить, какой тип числового значения я хочу.

<telerik:RadNumericTextBox MinValue="0" TabIndex="8" DataType="System.Int32" ID="txtPositiveNumericField" runat="server" Width="98%"> 
     <NumberFormat DecimalDigits="0" /> 
</telerik:RadNumericTextBox> 
Смежные вопросы