Jump to content
php.lv forumi
  • 0

jQuery - kad ar roku nomaina vienu vērtību, automātiski mainās cita


reGative

Question

Sveiki!

 

Savai pieredzei un zināšanām veidoju internetveikalu. Izmantoju kohana 3.2 un jQuery.

 

Nepieciešama funkcija - kad lietotājs ieraksta vēlamo preču skaitu, "add to cart" linkā uzreiz jānomainās preču skaitam.

 

Links "Add to cart" izskatās šādi :

 

 

<a href="<?=URL::site('products/add_to_cart/'.$product->id.'/'.Security::token())?>">Add To Cart</a>

 

Tātad, gaidu jūsu laipnību, idejas un pseido-kodus. :)

Link to comment
Share on other sites

10 answers to this question

Recommended Posts

  • 0

HTML:

 

~~~

<input id="product_count" />

~~~

 

JavaScript:

 

~~~

$('#product_count').change(function() {

 

var count;

 

count = parseInt($(this).val(), 10);

 

console.log(count);

 

// Now you have product count as integer.

 

});

~~~

 

Events tiks izsaukts, kad mainīsies vērtība input laukā. Tagad vari dabūtu intedžeru likt kur vēlies.

Link to comment
Share on other sites

  • 0

cilvēki nevar izzīlēt ko tu gribi, ja netiek uzdoti konkrēti jautājumi.

 

ja tev gribās aizsūtīt ievadīto skaitu php skriptam, tad jāizmanto jQuery ajax funkcijas $.ajax, $.get vai $.post tajā vietā, kur ir: "// Now you have product count as integer."

Link to comment
Share on other sites

  • 0

<script>
$('input').change(function() {
var count = parseInt($(this).val(), 10);
console.log(count);
// Now you have product count as integer.
});
$("div.add-to-cart")
.append(
"<a href='<?=URL::site('products/add_to_cart/'.$product->id.'/'.
Security::token())?>"+count+"'>Add To Cart</a>"
);
</script>

 

bet ir viena problēma - skaitļa vietā parādās [object HTMLInputElement].

Ko darīt?

Link to comment
Share on other sites

  • 0

Tev tur ar sintaksi izskatās, ka kkas nav gluži kārtībā. Un kā tu domā tas PHP kods tur izpildīsies (ja vien pirms tam neesi parsējis .js failu ar PHP interpretātoru)?

 

`$('#where').append('<a href="/over/the/rainbow">'+count+'</a>');`

Link to comment
Share on other sites

  • 0

Pārtaisīju.

 

<script>
$('#count').change(function() {
var count = parseInt($(this).val(), 10);
console.log(count);

});
$('.add-to-cart').append('<a href="/over/the/rainbow">'+count+'</a>');
</script>

Bet, tur kur mainīgā count vietā jābūt skaitlim, tur ir [object HTMLInputElement]

 

<input type="text" id="count" value="1" /><br />
<div class="add-to-cart"></div>

 

input lauks nekad nav tukšs.

Link to comment
Share on other sites

  • 0

Palasi vairaak par JavaScript asinhronitaati un variable scope'iem.

 

pagaidaam tu neko nesaprotot tikai kopee koda gabalus ar ceriibu, ka kaut kas straadaas - taa programmeet iemaaciities buus gruuti...

 

$("#count").change(function() {
 var count = $(this).val();

 alert(count); // jo tu noteikti nezini kas ir console.log()

 $(".add-to-cart").html(count);
});

Edited by rATRIJS
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...