Wpis z mikrobloga

#programowanie #javascript

Cześć, mam do zrobienia projekt (widoczny na zdjęciu). Samą stronę i slider mam zrobioną. Ale mam teraz w javascript zrobić input select w którym wybieramy nazwę produktu. Po wybraniu pojawia się nam się zdjęcie tego produktu i cena za m^2. Jeśli na zdjęciu klikniemy że chcemy ten produkt wyświetla nam się pole liczące nam koszt za podaną ilość. Liczę na pomoc :)
dzimen - #programowanie #javascript

Cześć, mam do zrobienia projekt (widoczny na z...

źródło: comment_gEuvGTtIZpsTAWKMTxQ1ftzH6wXzdqwQ.jpg

Pobierz
  • 42
@dzimen: robisz JSON z polami reprezentujacymi produkty (ktore tez beda obiektami o polach zawierajacych urle do zdjec i cene). selecta renderujesz tak, ze jego option values to klucze jsona z produktami. na selecta ustawiasz event change, ktory jak sie odpali to ustawi w img po prawej src produktu ktory jest przypisany do danego klucza. na element, ktory ma sluzyc do potwierdzania checi kupienia ustawiasz event click, ktory ma za zadanie wyswietlic
@paziu: @Arveit:

function option(name, value, imagesrc, price){
this.name = name;
this.value = getElementById(siatka).value;
this.imagesrc = imagesrc;
this.price = price;
this.check = function(){
return this.name - this.price;
};
}
var option1 = new option('Siatka pleciona', 1, 'a.jpg', '40zl/mb');
var option2 = new option('Siatka hodowlana', 2, 'b.jpg', '40zl/mb');
var option3 = new option('Siatka heksagonalna', 3, 'c.jpg', '40zl/mb');
var option4 = new option('Siatka leśna', 4, 'd.jpg', '40zl/mb');
var option5 = new option('Siatka zgrzewana',
@dzimen: wsadź te obiekty w tablice, a potem się do nich odwołuj przez index równy wybranej opcji. Łap zdarzenie onChange w selekcie (albo change, nie pamiętam już), któe wykona się zawsze, gdy zmieni się wartość selecta i w tym zdarzeniu ustawiasz parametr src w jakimś wybranym obiekcie img na Twoe imagesrc przedmiotu o indeksie z option value.

Obiekty JS-owe najlepiej tworzyć przez parę nawiasów klamrowych, notacja jest podobna do JSON-a (ale
@Arveit:

var tablica_produktow = [{
name: 'Siatka pleciona',
value: 1,
imageSrc: 'img/a.jpg',
price: '40zł/mb'
},{
name: 'Siatka hodowlana',
value: 2,
imageSrc: 'img/b.jpg',
price: '40zł/mb'
},{
name: 'Siatka heksagonalna',
value: 3,
imageSrc: 'img/c.jpg',
price: '40zł/mb'
},{
name: 'Siatka leśna',
value: 4,
imageSrc: 'img/d.jpg',
price: '40zł/mb'
},{
name: 'Siatka zgrzewana',
value: 5,
imageSrc: 'img/e.jpg',
price: '40zł/mb'
}]
@dzimen: eventy typu onchange muszą wywoływać funkcję, w swojej funkcji musisz ustawić po prostu podmienianie źródła obrazu. Zaprogramuj poniższe kroki w onchange:
1. wykryj która opcja jest zaznaczona
2. ustaw źródło obrazu na wartość imageSrc obiektu o indeksie zaznaczonej opcji (0, 1, 2, itp.)
@Arveit: Mam taką funkcję co kiedyś robiłem. Jak ją przerobić żeby działał tak jak ja bym chciał?
function displayImage() {
var image = document.getElementById("siatka");
var newImage = image.option[image.selectedIndex].value;
}