Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Web Development
You last visited: Today at 10:50

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



jQuery Problem - Informationen in einem Textfeld auslesen

Discussion on jQuery Problem - Informationen in einem Textfeld auslesen within the Web Development forum part of the Coders Den category.

Reply
 
Old   #1
 
.Acu³'s Avatar
 
elite*gold: 166
Join Date: Mar 2011
Posts: 207
Received Thanks: 25
jQuery Problem - Informationen in einem Textfeld auslesen

Hey epvp,
habe ein Problem mit jQuery.
Auf einer Produktkonfigurationsseite kann man verschiedene Komponenten wählen (also wie bei diesen PC-Konfigurationsseiten von zb Dell).

Je nachdem was gewählt ist, ändert sich der Preis. Jetzt möchte ich, wenn der Preis eine bestimmte Höhe erreicht automatisch 10% Rabatt anzeigen lassen.

Das Problem: Ich weiß nicht, wie ich das Feld Live überwachen soll. Sowas wie "keydown" oder so geht ja nicht, da es kein Eingabefeld ist.

Hat da jemand eine Lösung?:>
LG, Acu³
.Acu³ is offline  
Old 08/05/2012, 16:38   #2
 
PseudoPsycho's Avatar
 
elite*gold: 1715
Join Date: Dec 2011
Posts: 672
Received Thanks: 207
Was ist das denn dann?
Eine Selectbox? -> onChange
PseudoPsycho is offline  
Old 08/05/2012, 16:52   #3
 
.Acu³'s Avatar
 
elite*gold: 166
Join Date: Mar 2011
Posts: 207
Received Thanks: 25
Der Gesamtpreis wird so ausgegeben:
Code:
<span class="netto"> ... </span>

Über eine If Anweisung kann ich ja rausfinden ob ein gewisser Wert erreicht ist also zb
Code:
if($('.netto').text() == '300.00€') {
       $('p.rabatt').fadeIn("fast");
}
Die Frage ist nur, wie ich das immer wieder nachprüfe. Weil so wird es ja nur beim Laden der Seite überprüft, und nicht wenn sich der Preis ändert. Da scheiter ich grade irgendwie..
.Acu³ is offline  
Old 08/05/2012, 17:03   #4
 
epiTR's Avatar
 
elite*gold: 185
Join Date: May 2008
Posts: 3,646
Received Thanks: 603
Code:
$('.netto').onChange(function() {
if($('.netto').text() == '300.00€') {
       $('p.rabatt').fadeIn("fast");
}
});
Damit sollte es funktionieren.
epiTR is offline  
Old 08/05/2012, 17:23   #5
 
.Acu³'s Avatar
 
elite*gold: 166
Join Date: Mar 2011
Posts: 207
Received Thanks: 25
Leider nein, da tut sich garnichts.

[17:22:12.949] $(".netto").OnChange is not a function
.Acu³ is offline  
Old 08/05/2012, 17:46   #6
 
kissein's Avatar
 
elite*gold: 0
Join Date: Sep 2005
Posts: 426
Received Thanks: 87
Lass serverseitig ein hiddenfield/id setzen auf welches das jquery script seine überprüfung fährt.

Ich weiss das die meisten mit javascript im internet unterwegs sind, aber dieser werte würde ich alles serverseitig steuern. Jquery würde ich hierfür nur die Effekte benutzen aber keine werteberechnung, dass sollte alles vom server geliefert werden.
kissein is offline  
Old 08/05/2012, 21:18   #7
 
elite*gold: 0
Join Date: Oct 2008
Posts: 319
Received Thanks: 88
Quote:
$('.netto').onChange(function() {
if($('.netto').text() == '300.00€') {
$('p.rabatt').fadeIn("fast");
}
});
Wäre mir persönlich neu das jQuery seine Event Funktionen mit dem "on" Präfix versehen sind. Die korrekte Funktion würde also simpel "change" und nicht "onchange" lauten.
Fratyr is offline  
Old 08/05/2012, 21:23   #8
 
.Acu³'s Avatar
 
elite*gold: 166
Join Date: Mar 2011
Posts: 207
Received Thanks: 25
Richtig, aber auch damit geht es leider nicht..
Noch jemand?
.Acu³ is offline  
Old 08/05/2012, 21:59   #9
 
PseudoPsycho's Avatar
 
elite*gold: 1715
Join Date: Dec 2011
Posts: 672
Received Thanks: 207
Naja, über <span> lassen sich ja keine Nutzereingaben bewerkstelligen (zumindest nicht ohne das HTML5 "contenteditable" Attribut).
Wahrscheinlich wird der Inhalt also mit einer JS-Funktion erzeugt und die müsstest du abfangen können, wenn du weißt, wie sie heißt.

Edit: Wenn es nur beim Laden serverseitig gesetzt wird, so wäre $(document).ready() die korrekte Methode.
PseudoPsycho is offline  
Old 08/05/2012, 22:18   #10
 
.Acu³'s Avatar
 
elite*gold: 166
Join Date: Mar 2011
Posts: 207
Received Thanks: 25
Genau, der Inhalt wird mit JS erzeugt. Es soll nicht nur beim Laden sein, sondern eben immer aktualisiert werden.. dass es beim Laden klappt ist kein Problem.

Aber ich hab inzwischen eine Lösung:
Man kann ja mehrere Radiobuttons wählen und bei jedem mal wenn jmd was auswählt wird eine Funktion aufgerufen die schaut ob jetzt ein Rabatt möglich ist.

Danke euch trotzdem :>
.Acu³ is offline  
Old 08/06/2012, 11:21   #11
 
kissein's Avatar
 
elite*gold: 0
Join Date: Sep 2005
Posts: 426
Received Thanks: 87
Quote:
Originally Posted by .Acu³ View Post
Genau, der Inhalt wird mit JS erzeugt. Es soll nicht nur beim Laden sein, sondern eben immer aktualisiert werden.. dass es beim Laden klappt ist kein Problem.
JSON ist deine Lösung
kissein is offline  
Old 08/08/2012, 14:45   #12
 
'Ownii's Avatar
 
elite*gold: 0
Join Date: Mar 2011
Posts: 270
Received Thanks: 770
Kannst du es nicht einfach so machen, dass wenn man irgendwas neues auswählt, sodass sich der Preis ändern, dann überprüft wird ob man in dem Preisbereich ist, wo man die 10% Rabatt bekommt? Oder sehe ich das falsch? Weil das ist denke ich mal am einfachsten o.O

mfg Ownii
'Ownii is offline  
Old 08/18/2012, 09:24   #13
 
elite*gold: 0
Join Date: Sep 2010
Posts: 17
Received Thanks: 3
Code:
<!DOCTYPE html>
<html>
  <head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <script language="javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
  </head>
  <body>
    <form action="validate.php" method="POST" target="_self">
      <div class="box">
         <select class="item" name="item[]" size="1">
           <option  value="0" selected="selected">-</option>
           <option  value="1">AMD</option>
           <option  value="2">Intel</option>
         </select>
         <select class="item" name="item[]" size="1">
           <option value="0" selected="selected">-</option>
           <option value="8">MSI</option>
           <option value="9">Asus</option>
         </select>
         <input type="submit" name="go" value="go" />
      </div>
      <div id="price"/>
    </form>
  </body>
</html>

<script type="text/javascript">
  //werte aus DB
  maxPrice=400;
  discount=10;
  // werte aus DB json_encode(array[id][price]);
  priceById=$.parseJSON('{"0":0,"1":100,"2":200,"8":200,"9":300}');

  $('.item').change(function(){
    price=0;
    $(".item option:selected").each(function() {
      price+=parseFloat(priceById[this.value]);
    });
    price=(price>=maxPrice)?price*(1-discount/100)+' Discount 10%':price;
    $('#price').text(price);
  });
</script>
Wenn du eine FormAction hast kannst du das Array $_REQUEST['item'] durchschleifen
und nochmal serverseitig validieren...
das selbe Spiel nachmal
Code:
foreach($_REQUEST['item'] as $id){
   $price+=Db->getPriceById($id);
etc....
die Dropdown Boxen werden natuerlich auch aus der DB generiert....
FR28 is offline  
Old 08/18/2012, 20:11   #14
 
elite*gold: 0
Join Date: Oct 2008
Posts: 319
Received Thanks: 88
Also ich muss ja sagen ich finds irgendwie nett das du generell Fragen mit irgendwelchen Codeschnippseln beantwortest, die längst geklärt sind.

PHP Code:
  maxPrice=400;
  
discount=10
Das wäre gleichzusetzen wenn du in PHP Variablen mit "global" definierst <.< Sowas is
böse! Nur so am Rande : o
PHP Code:
  var maxPrice=400,
       
discount=10
Fratyr is offline  
Old 08/18/2012, 21:07   #15
 
elite*gold: 0
Join Date: Sep 2010
Posts: 17
Received Thanks: 3
Quote:
Originally Posted by Fratyr View Post
Also ich muss ja sagen ich finds irgendwie nett das du generell Fragen mit irgendwelchen Codeschnippseln beantwortest, die längst geklärt sind.

PHP Code:
  maxPrice=400;
  
discount=10
Das wäre gleichzusetzen wenn du in PHP Variablen mit "global" definierst <.< Sowas is
böse! Nur so am Rande : o
PHP Code:
  var maxPrice=400,
       
discount=10
Nur mal so am Rande
Code:
 var maxPrice=400,
       discount=10; //Global weil nicht in einer Funktion...
Nicht mal Klugscheissen kannst du richtig!


Auserdem sind es keine Codeschnipsel, sondern simple Beispiele die funktionieren...
und nicht irgend ein Kopierter Spagettifizierter Code.
FR28 is offline  
Reply


Similar Threads Similar Threads
JQuery Problem
04/19/2012 - Web Development - 4 Replies
Moin, also es geht primär um dieses Beispiel: $("#arrow-top").wrap('<a href="#" onclick="getMap(\'Top\');"></a> '); Wenns ichs am PC teste (mit XAMPP) funktioniert es einwandfrei. Wenn ich es aber aufn Server lade, gehts nicht mehr, also er wrap'ed das Bild nicht mehr. Alles andere funktioniert sonst einwandfrei, nur eben das nicht.
[jQuery]Suche jemanden der mir bei einem Webauftritt hilft
04/05/2012 - Web Development - 9 Replies
Hallo, Ich spiele gerade an meiner Website herum :) Ich will eine "Startseite" haben, die design technisch etwas hermacht, doch leider bin ich nicht sehr erfahren im Umgang mit jQuery und co. Aktuell siehts so aus: Lawliet Develompment Es soll schlicht sein, aber trotzdem bischen was hermachen. Ist hier jemand, der sich damit auskennt? MfG lawliet
[VB 2010] Browser Textfeld-Inhalt auslesen
02/20/2012 - .NET Languages - 5 Replies
Hey epvp, ich stecke gerade in meinem WEB.DE Programm fest. Undzwar schreibt VB etwas (was zufällig generiert wird) in das Feld für die Wunsch-E-Mail. Meine Frage lautet nun, wie kann ich den Inhalt wieder auslesen, d.h dass es z.B in einer Textbox steht? MfG
[Java] Namen oä aus TextFeld auslesen.
01/15/2012 - General Coding - 7 Replies
Hi also ich hab mir nen GUI erstellt mit nem Textfeld also Nicht so nen großes sonderen so eins mit einer Zeile. Und möchte da den Namen raus speichern um ihn nachher wiederzugeben. Hab schon Youtube geguckt und Google aber hab nix gefunden MFG Resurrection
Informationen über eine Datei auslesen
01/03/2011 - AutoIt - 13 Replies
Hi epvp, Ich wüsste gerne ob es eine möglichkeit gibt, Informationen über eine Datei auszulesen wie zum Beispiel Autor, Version ect. (rechtsklick auf beliebige Datei, Eigenschaften, das tab wechseln, hier kann man autor , version, kurzbeschreibung ect einstellen) Danke für eure hilfe AutoitScript



All times are GMT +2. The time now is 10:50.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.