我正在通過Asp.net MVC4.0中的應用程序工作,其中我是Model CountryInformation ,它具有以下屬性。當模型是我輸入後確認爲緯度場錯誤的值Asp.Net MVC 4 Regular Express屬性不顯示我的消息
[Required(ErrorMessage = "This field is required.")]
[Display(Name = "Country Name")]
public string CountryName { get; set; }
[Required(ErrorMessage = "This field is required.")]
[RegularExpression(@"^[+-]?[0-9]{1,9}(?:\.[0-9]{1,6})?$",ErrorMessage = "Input decimal numbers.")]
public float Latitude { get; set; }
[Required(ErrorMessage = "This field is required.")]
//[RegularExpression(@"^[+-]?[0-9]{1,9}(?:\.[0-9]{1,6})?$", ErrorMessage = "Input decimal numbers.")]
public float Longitude { get; set; }
[Required(ErrorMessage = "This field is required.")]
//[RegularExpression(@"^[+-]?[0-9]{1,9}(?:\.[0-9]{1,6})?$", ErrorMessage = "Input decimal numbers.")]
[Display(Name = "GMT Offset")]
public float GMTOffSet { get; set; }
public string Currency { get; set; }
一切工作正常,即ABC當然不是一個小數,然後它不顯示我的錯誤消息,但「 值‘ABC’是對於谷歌縱橫無效「。每頁在頁面源中我看到的值爲
<input id="Latitude" class="input-validation-error text-box single-line" type="text" value="abc" name="Latitude" data-val-required="This field is required." data-val-regex-pattern="^[+-]?[0-9]{1,9}(?:\.[0-9]{1,6})?$" data-val-regex="Input decimal numbers." data-val-number="The field Latitude must be a number." data-val="true">
值'abc'對於緯度無效。 請描述爲什麼我看不到我的信息
你的建議正則表達式不需要,因爲我有這個 緯度= 15或15.15或+15或-20.5 同樣適用於經度和GMT偏移量。 如果它的正則表達式導致另一個消息被顯示,並且友好地向我建議一個正則表達式來滿足我的需要。 謝謝 –
所以你的問題是+和 - 小數前的符號 沒問題只是添加[+ - ]?在正則表達式之前 現在新的表達式是 *^[+ - ]?[0-9]([。] [0-9] {1,3})?$ * – user2615807