PDA

View Full Version : سوال: در مورد كنترل اطلاعات ورودي



سیروس مقصودی
چهارشنبه 02 اسفند 1396, 12:17 عصر
با سلام
من در داخل تگ input اعدادي ا وارد ميكنم . چگونه ميتوانم آخرين عددي را كه وارد ميكنم را برداشته يك سري شرط روش انجام و اگر صحيح بود در input وارد شود .
مثلا در يك input عدد 123 را وارد كردم حالا ميخواهم عدد 4 را وارد كنم ميخواهم قبل از اينكه عدد 123 به عدد 1234 تبديل شود عدد 4 را در حين وارد كردن برداشته و يكسري شروط روي عدد 4 انجام بدم و اگر شروط ok بود عدد 123 به 1234 تبديل شود و در غير اينصورت از وارد شدن عدد 4 جلوگيري كند.
با تشكر ...

Moien Tajik
چهارشنبه 02 اسفند 1396, 16:48 عصر
https://jsfiddle.net/MoienTajik/5y4khxzr/25/

سیروس مقصودی
شنبه 05 اسفند 1396, 08:14 صبح
با سلام
ببخشيد اگر امكان دارد ميشود توضيح بدهيد كه دستور زير چه كاري انجام ميدهد . چون من تازه mvc را شروع كردم . و علامت === به جه معني است .
در ضمن من ميخواهم اگر كاربر كاركتري غير از عدد وارد كرد برنامه اجازه ندهد كاركتري غير از عدد وارد شود و علاوه بر آن اگر كاربر علامت "." براي اعشار وارد كردن فقط يكبار وارد شود و دفعه دوم اجازه ندهد

با تشكر



<input type="text" id="fname">

<script>
$(document).ready(function () {
$('#fname').keydown(function (e) {
var enteredValue = String.fromCharCode(e.which);

// Your Conditions Here
if (enteredValue === "4")
e.preventDefault();
});
});
</script>

Moien Tajik
شنبه 05 اسفند 1396, 12:04 عصر
علامت === به جه معني است .
کاراکتر === در ابتدا چک میکنه که Type های 2 طرف که مقایسه میشن باهم برابر هستن یا خیر.

در جاوا اسکریپت این 2 رو اگر با == مقایسه کنید بهتون true بر میگردونه و Type ها مقایسه نمیشن ، در حالی که یکی int و دیگری string هست :

var a = 1;
var b = "1";
console.log(a == b); // result : true


اما اگر به این شکل بنویسید false دریافت میکنید :

var a = 1;
var b = "1";
console.log(a === b); // result : false



در ضمن من ميخواهم اگر كاربر كاركتري غير از عدد وارد كرد برنامه اجازه ندهد كاركتري غير از عدد وارد شود
از Regex استفاده کنید داخل همون کدی که فرستادم.


علاوه بر آن اگر كاربر علامت "." براي اعشار وارد كردن فقط يكبار وارد شود و دفعه دوم اجازه ندهد
داخل همون کد تعداد کارکترهای "." رو پیدا کنید ، اگر 1 بود preventDefault کنیدش تا وارد شدنش ignore بشه.

سیروس مقصودی
شنبه 05 اسفند 1396, 15:14 عصر
عذر ميخوام نحوه استفاده از regex چگونه هستش چون من تازه كار هستم

Moien Tajik
شنبه 05 اسفند 1396, 21:42 عصر
https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_match_regexp