我有一個表單,用戶可以在其中輸入與我的 ViewModel 的可為空長屬性關聯的值。但是因為我在該文本框中有一個“onblur”事件,所以我試圖驗證在我的 textbox.onblur() 事件中輸入的值,并確保它不超過 C# 的 long.MaxValue。這是我在該文本框中的“模糊”代碼。
var value = $(this).val();
console.log(value > 9223372036854775807);
if (value<= 1 || value > 9223372036854775807) {
$('#divValueError').text("Invalid Value!");
return false;
}
但是如果我輸入 9223372036854775808,Javascript 在該 console.log 陳述句中回傳 false。如何檢查用戶輸入的數字是否在 C# long 值的限制范圍內?
我了解 Javascript 不支持 64 位數字。在呼叫此模糊事件之前,我也無法在該屬性上觸發我的 [Range] 資料注釋,即使我嘗試過
if (!$(this).valid()) {
return false;
}
如果用戶輸入的值超出 C# 的長資料型別值的邊界,請告訴我如何引發客戶端錯誤。
謝謝!
uj5u.com熱心網友回復:
完美答案:我正在提供可以解決您問題的示例。在此,您首先必須將您的值轉換為字串,然后轉換為大整數。添加了參考鏈接以獲得更好的指導。
var valuecompare = BigInt("9223372036854775808");
var valuebase = BigInt("9223372036854775807");
console.log(valuecompare);
console.log(valuebase);
if (valuecompare > valuebase) {
console.log('greater value');
}
else{
console.log('less value');
}
參考鏈接:https ://www.smashingmagazine.com/2019/07/essential-guide-javascript-newest-data-type-bigint/
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/492108.html
