ورود

View Full Version : حرفه ای: مشکل اجرای چند شرط در یک زمان



reza10wert
سه شنبه 19 شهریور 1392, 16:42 عصر
سلام دوستان
چرا من وقتی این کد رو اجرا میکنم فقط شرط اولی رو اجرا میکنه ؟
در صورتی که هر دو شرط برقرار هستند !

if ( name=='' ) {
document.getElementById('name_err').innerHTML = 'لطفا نام خود را وارد نمایید';
document.getElementById('name_err').style.display="list-item";
return false;
}
if ( phone == '' ) {
document.getElementById('phone_err').innerHTML = 'لطفا شماره تماس خود را وارد نمایید';
document.getElementById('phone_err').style.display ="list-item";
return false;
}

jalil_gh
سه شنبه 19 شهریور 1392, 17:47 عصر
هر وقت اجرای کد در داخل یه تابع به return میرسه،‌کدهای بعد از اون اجرا نمیشه.

reza10wert
سه شنبه 19 شهریور 1392, 19:04 عصر
ممنون از راهنماییتون

الان راه چاره چیست ؟

میخوام در صورتی که یک سری ورودی خالی نیست فرم ارسال بشه . باید چه کنم ؟

ممنون

jalil_gh
چهارشنبه 20 شهریور 1392, 08:15 صبح
شما میتونید ابتدای تابع یک متغیر تعریف کنید مثلا به نام isEmpty و مقدار اون رو false قرار بدید. بعد داخل شرط ها اگه فیلد خالی بود مقدارش false بمونه و اگه پر بود مقدار true رو بهش بدید. در آخر تابع هم چک کنید که اگه مقدارش true بود یعنی همه مقادیر پر هستن و گرنه حداقل یکی از فیلدها خالیه.

reza10wert
چهارشنبه 20 شهریور 1392, 13:35 عصر
شما میتونید ابتدای تابع یک متغیر تعریف کنید مثلا به نام isEmpty و مقدار اون رو false قرار بدید. بعد داخل شرط ها اگه فیلد خالی بود مقدارش false بمونه و اگه پر بود مقدار true رو بهش بدید. در آخر تابع هم چک کنید که اگه مقدارش true بود یعنی همه مقادیر پر هستن و گرنه حداقل یکی از فیلدها خالیه.
درست متوجه نشدم
میشه یه کم بیشتر توضیح بدید
ممنون

jalil_gh
چهارشنبه 20 شهریور 1392, 19:41 عصر
یه چیزی تو این مایه‌ها
var isEmpty = false;

if ( name=='' ) {
// do something
isEmpty = true;
}
if ( phone == '' ) {
// do something
isEmpty = true;
}

if (isEmpty) {
return false;
}