Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PHP, formularze i ajax ?
Forum PHP.pl > Forum > PHP
dr_NO
prosta sprawa (no może nie aż tak ...)

Potrzebuje zrobić coś takiego:
Delikwent wybiera jakąś opcję z przykładowo radio butona i mu wywala przykładowo liczba w wyniku 20, później zaznacza jakiegoś checkboxa i do tego wyniku w czasie rzeczywistym, bez odświerzania strony dodaje się wartość z danego checkboxa .... coś ala kalkulator, tyle że bez naciskania klawisza równości, czyli jak kto woli bez wysyłania formularza, i teraz pytanie, java czy ajax ? prosiłbym o ewentualne przykłady, bo nie mam zielonego pojęcia nawet jak się za to zabrać ;(
kossa
JavaScript i przy każdym elemencie wyołuj funkcję (kiedy nastąpi zdażenie - np. zmiana wartości stanu). Funkcja powinna sprawdzać jakie pola są zaznaczone, jakie mają wartości i przeliczać zebrane informacje.

Łukasz
Norbas
Cytat
... i teraz pytanie, java czy ajax ?

IMO wystarczy JavaScript o ile dobrze Cię zrozumiałem smile.gif
Cytat
prosiłbym o ewentualne przykłady

Proszę:
Kod
<script type="text/javascript">
function klik(e,a){
    if(e.checked){
        var w=e.form.w, v=parseFloat(w.value)
        if(isNaN(v))v=0
        w.value=v+parseFloat(a)
    }
}
</script>
<form>
<input type="text" name="w" />
<input type="radio" name="r" onclick="klik(this, 20)" />
<input type="checkbox" name="c" value="10" onclick="klik(this, this.value)" />
</form>
dr_NO
@Norbas, o to mi właśnie chodziło, dzieki bardzo, tylko jest malutki problem, mianowicie, gdy 'odchacze' checkboxa to dana wartość 'nie maleje' o tą zdefiniowaną ilość, tak samo z radio ...

Sorry wielkie, ale z java scriptem jestem na bakier, może źle coś zrozumiałem ...

edytka...
w takim razie prosiłbym o przeniesienie tematu do działu 'Po stronie przeglądarki'[/b]
Norbas
Cytat
tylko jest malutki problem, mianowicie, gdy 'odchacze' checkboxa to dana wartość 'nie maleje' o tą zdefiniowaną ilość, tak samo z radio

Nie da się tak zrobić z radio i funkcją, którą podałem. Kliknięcie na radio powoduje, że element jest zaznaczony, nie działa jak checkbox, którego kliknięcie zaznacza lub odznacza dany element.
Zmieniona wersja:
Kod
<script type="text/javascript">
function klik(e,a){
    var w=e.form.w, v=parseFloat(w.value)
    if(isNaN(v))v=0
    w.value=(e.checked)?(v+parseFloat(a)):(v-parseFloat(a))
}
</script>
<form>
<input type="text" name="w" />
<input type="radio" name="r" onclick="klik(this, 20)" />
<input type="checkbox" name="c" value="10" onclick="klik(this, this.value)" />
</form>


Można również zastosować poniższe rozwiązanie, ale tutaj po kliknięciu zmieniane są również wartości pól dla radio i checkboxa:
Kod
<script type="text/javascript">
function klik2(e){
    var w=e.form.w, v=parseFloat(w.value), a=parseFloat(e.value)
    if(isNaN(v))v=0
    w.value=v+a
    e.value=-a
}
</script>
<form>
<input type="text" name="w" />
<input type="radio" name="r" value="20" onclick="klik2(this)" />
<input type="checkbox" name="c" value="10" onclick="klik2(this)" />
</form>
dr_NO
ok, chodziło mi właśnie o coś takiego, dzięki ogromne, i jeszcze jedna mlutka prośba, mógłbym prosic o wyjaśnienie or somthing, względem tego skryptu ? byłbym wdzięczny.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.