وظيفة JS العادية للتحقق مما إذا كان المدخلات هو عنوان URL شائع جدًا أيضًا في صفحات الويب. عند ملء الصفحات الرئيسية الشخصية بالروابط والنماذج الودية ، استخدم JavaScript للتحقق مما إذا كان عنوان URL.
ليس من السهل الكتابة ، لذلك من الأفضل استخدام التعبيرات العادية للمصادقة.
منصوص على أن الإدخال يمكن أن يبدأ فقط بـ http: // و https: // ، ويجب أن يكون عنوان URL.
يقول بعض الناس ، لماذا لا يمكن أن تعمل صفحات الويب مثل www.1.com؟
هذا لتجنب حقيقة أنه عند استخدام إدخال المستخدم لإنشاء ارتباط تشعبي ، إذا كانت سمة HREF في العلامة لا يمكن أن تواجه شيئًا http: // أو https: // ، فسيتم اعتباره دليل الجذر ثم يكتب هذا العنوان وراء عنوان URL لموقع الويب الخاص بك ثم القفز. يجب أن يعرف الجميع هذا. على سبيل المثال ، إذا كان <a href = "www.1.com"> xxx </a> ، فإن عنوان URL الخاص بي هو http: // localhost. ثم بعد النقر على علامة A معروضة على أنها xxx ، يمكنك فقط الانتقال إلى الموقع http: //localhost/www.1.com ، بالطبع هذا خطأ.
على سبيل المثال ، في مربع النص التالي ، كيفية استخدام التعبيرات العادية لتطلب من المستخدمين إدخال عنوان URL بدءًا من http: // و https: //؟
1. أولاً وقبل كل شيء ، إنه تصميم بسيط ، وغني عن القول:
<! doctype html public "-// w3c // dtd xhtml 1.0 transitional // en" "http://www.w3 xmlns = "http://www.w3.org/1999/xhtml"> <head> <meta http-equiv = "content-type" content = "text/html ؛ charset = utf-8"/> <title> undled document </title> </head> عنوان URL^_^! <br/> <input type = "text" id = "url"/> <button onClick = "checkurl ()"
2. والثاني هو البرنامج النصي ، لا توجد حاجة في الواقع لقول ذلك. المفتاح هو التعبير العادي:
<script> وظيفة checkurl () {var url = document.getElementById ("url"). value ؛ var reg =/^([hh] [tt] {2} [pp]: /// | [hh] [tt] {2} [pp] [ss]: ////) (([[a-za-z0-9- ~]+)/.) if (! reg.test (url)) {Alert ("لا يبدأ عنوان URL هذا بـ http: // https: // ، أو ليس عنوان URL!") ؛ } آخر {ALERT ("الإدخال الناجح") ؛ }} </script>في: var reg =/^([hh] [tt] {2} [pp]: /// | [hh] [tt] {2} [pp] [ss]: ////) (([[a-za-z0-9- ~]+)/.)+(
1. في JavaScript ، نظرًا لأن جميع المتغيرات هي var ، يجب كتابة التعبير العادي في اثنين من القطع المائلة ، /.../ ، ثم يجب كتابة Slashes/في التعبير العادي As //
2. ^ يعني أنه يجب أن يبدأ بـ ... ، [] يعني وحدة اختبار ، أي شيء يمكن أن تستوعبه شخصية معينة. على سبيل المثال ، ^([hh] [tt] {2} [pp]: //// | [hh] [tt] {2} [pp] [ss]: ////) ، مما يعني أنه يتطلب أن يبدأ بـ http: // أو https: //. | نعم ، الشخصية الأولى هي h أو h ، الشخصيات الثانية والثالثة هي [tt] ، {2}
3. ([A-ZA-Z0-9- ~]+) يعني أن بما في ذلك الحرف وشخصياته اللاحقة يجب أن يكون أحرفًا كبيرة ، أحرف صغيرة ، أرقام ، ناقص العلامات-أو ~
تعني الحرف +: تطابق الشخصيات قبل + علامة 1 أو n مرات ، على سبيل المثال: /a + /match 'a' في "candy" وكل "A" في "Caaaaaaandy".
4. لذلك (([A-ZA-Z0-9- ~]+)/.)+ يعني xxx. يجب أن يظهر هذا الشيء الذي ينتهي بنقطة مرة واحدة على الأقل قبل الحرف ([A-ZA-Z0-9- ~ //])+$.
5. $ يعني أنه يجب أن ينتهي بأحرف كبيرة ، أحرف صغيرة ، أرقام ، ناقص العلامات -، ~ ، /
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.