darkzed
3 سال پیش توسط darkzed مطرح شد
9 پاسخ

برسسی انی دیتا

با سلام
دوستان توی کد های js بنده یه دیتایی رو از selection html میگیرم بعد اول value اون رو نشون میدم و سپس با متغییر if یه فعالیتی رو میدم
الان اون بخش value با تغییر selection تغییر میکنه ولی اون if هایی که قرار دادم دوباره چک نمیشه و اون پردازش اول صفحه نمایش داده میشه ممنون میشم به بنده کمک کنید این if با هر بار تغییر در selection توسط کاربر value اون بیاد و دوباره تو if برسی بشه

    setInterval(function(){ 
        var typeacc = document.querySelector('#tyac').getAttribute("data-value")
        var timeacc = document.getElementById("selectmonth").value;
    document.getElementById("time").innerHTML = timeacc; 
        if(timeacc == 30){ 
                document.getElementById("price").innerHTML = pf1standard;  
        }
        if(timeacc == 90){  
                document.getElementById("price").innerHTML = pf3standard;  

            }
        if(timeacc == 365){
        } 

    }, 1);

ثبت پرسش جدید
عبدالرحمان کیانی
تخصص : Backend developer
@abdolrahman 3 سال پیش مطرح شد
0

میتونید شرط ها رو برای وقتی که اون سلکت تغییر کرد بزارین. فقط کافیه یک رویداد onchange تعریف کنید و شرط هارو داخلش بزارین


darkzed
@amirhossien1338 3 سال پیش مطرح شد
0

@abdolrahman
امکانش هست نمونه کدی در این باره به بنده بدید


عبدالرحمان کیانی
تخصص : Backend developer
@abdolrahman 3 سال پیش مطرح شد
0

چشم فقط چرا کد هاتون رو داخل setinterval گزاشتین؟


darkzed
@amirhossien1338 3 سال پیش آپدیت شد
0

@abdolrahman
به خاطر اینکه هر 1 ثانیه محتوای داخل همون selection رو برسسی کنه


عبدالرحمان کیانی
تخصص : Backend developer
@abdolrahman 3 سال پیش مطرح شد
0

خب اینکاری کردین درست نبود ، راه بهتری وجود داشت. از onchange میتونید استفاده کنید

var yourinput = document.getElementById("selectmonth")
yourinput.onchange = function() {
    var typeacc = document.querySelector('#tyac').getAttribute("data-value")
    var timeacc = document.getElementById("selectmonth").value;
    document.getElementById("time").innerHTML = timeacc;
    if (timeacc == 30) {
        document.getElementById("price").innerHTML = pf1standard;
    }
    if (timeacc == 90) {
        document.getElementById("price").innerHTML = pf3standard;
    }
}

این کد وقتی اون سلکتتون تغییر کرد ، میاد شرط هارو چک میکنه و کار هارو انجام میده


darkzed
@amirhossien1338 3 سال پیش مطرح شد
0
عبدالرحمان کیانی
تخصص : Backend developer
@abdolrahman 3 سال پیش مطرح شد
0

@amirhossien1338
خطایی میده؟
نمیدانم چرا کار نمیکنه. درکل این کاربرد onchange بود ، خوتون باهاش ور برید شاید راه حلی پیدا کردید. امیدوارم دوستان کمکتون کنن


darkzed
@amirhossien1338 3 سال پیش مطرح شد
1

@abdolrahman
مشکلش اینه که خطایی دریافت نمیکنم و کد هم کار نمیکنه :(


محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 3 سال پیش مطرح شد
0

در اینجور مواقع که کد کار نمی‌کنه و هیچ خطایی هم دریافت نمی‌کنید یکی از رایج ترین دلایلش Selector های اشتباه هست. یکبار دیگه با دقت اسم ها رو چک کنید و اگر باز هم متوجه مشکلی نشدید، با استفاده از console.log یا ... مرحله به مرحله چک کنید تا ببینید کد تا کجا خونده میشه و کجا گیر می‌کنه.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام