تصف هذه المقالة طريقة JavaScript لتحديد ما إذا كان المستخدم قد قام بتعديل النموذج. شاركه للرجوع إليه. التحليل المحدد هو كما يلي:
يمكن أن يحدد رمز JS هذا ما إذا كان المستخدم قد قام بتعديل محتوى النموذج. إذا تم تعديل النموذج وخرج من المتصفح ، فسوف يذكر المستخدم ما إذا كان سيتم حفظ محتوى النموذج. إنه رمز مفيد للغاية.
دالة formisDirty (form) {for (var i = 0 ؛ i <form.elements.length ؛ i ++) {var element = form.elements [i] ؛ var type = element.type ؛ if (type == "checkbox" || type == "radio") {if (element.checked! = element.defaultChecked) {return true ؛ }} آخر إذا (type == "hidden" || type == "password" || type == "text" || type == "textarea") {if (element.value! = element.defaultValue) {return true ؛ }} آخر إذا (type == "select-One" || type == "select-multiple") {for (var j = 0 ؛ j <element.Options.length ؛ j ++) {if (element.options [j] .selected! = element.options [j] .defaultselected) {return true ؛ }}} إرجاع false ؛}مثال على الاستخدام: عند الخروج من المتصفح ، إذا قام المستخدم بتعديل النموذج ، فسيتم تذكير المستخدم بما إذا كان سيتم حفظه.
window.onbeforeunload = function (e) {e = e || window.event ؛ if (formisDirty (document.forms ["someform"])) {// for ie و firefox if (e) {e.returnvalue = "لديك تغييرات غير محفوظة. } // لعودة Safari "لديك تغييرات غير محفوظة." ؛ }} ؛هنا رمز مثال كامل
نسخة الكود كما يلي: انقر فوق الزر أدناه. الآن قم بتغيير بعض القيم في النموذج وانقر فوق الزر مرة أخرى.
<name form = "fooform">
<type type = "text" name = "t"> <br>
<type type = "text" name = "2" value = "default"> <br>
<تحديد الاسم = "بعض">
<Option Value = "fooo" select = ""> foo </soph>
<Option Value = "BAR"> BAR </OPTION>
</select> <br>
</form>
<button onClick = "Alert (formisDirty (document.fooform))"> انقر للتحقق مما إذا كان النموذج متسخًا </button>
<br>
<script>
وظيفة formisdirty (form) {
لـ (var i = 0 ؛ i <form.element.length ؛ i ++) {
var element = form.Elements [i] ؛
var type = element.type ؛
if (type == "checkbox" || type == "radio") {
if (element.checked! = element.defaultChecked) {
العودة صحيح.
}
}
آخر إذا (اكتب == "مخفي" || type == "كلمة المرور" ||
اكتب == "نص" || اكتب == "textarea") {
if (element.value! = element.defaultValue) {
العودة صحيح.
}
}
وإلا
لـ (var j = 0 ؛ j <element.options.length ؛ j ++) {
if (element.options [j]. selected! =
element.options [j] .Defaultselected) {
العودة صحيح.
}
}
}
}
العودة كاذبة
}
</script>
آمل أن تكون هذه المقالة مفيدة لبرمجة JavaScript للجميع.