Wątek przeniesiony 2014-02-28 00:58 z Java przez bogdans.

Pobranie wartości ze zmiennej

0

Witam, zleciłem kiedyś komuś aby napisał dla mnie pewien kalkulator w javie <ins>JAVASCRIPCIE</ins>. Obecnie potrzebuje wprowadzić w nim małą modyfikację jednak nie znam się kompletnie na javie stąd moja prośba o pomoc na tym forum. A więc do rzeczy.

Na mojej stronie internetowej chce dodać przycisk PAYPALA, który za cenę wstawi wartość jaką wyliczył ten kalkulator. Z tego co zrozumiałem z kodu javy <ins>JAVASCRIPT</ins> wartość jaką podaje kalkulator kryje się pod zmienną
$('#price).text('Price: ' + cenaNowa + ' $');
Sposób wyliczania wartośći chyba nie jest ważny z punktu mojego pytania. Kluczowe pytanie to jak przenieść wartość z #price do przycisku paypala, ktory znajduje się w htmlu.
Na chłopski rozum stworzyłem w pliku .js coś takiego:
$('#cena').val('price');
a zmienną cena wrzuciłem w kod przycisku w html. Niestety jednak takie rozwiązanie nie działa. CO WAŻNE gdy zamiast price wpisze np. 11 to przycisk paypala działa. Dlaczego więc stała wartość działa i przenosi się z js do html natomiast wartość jaka kryje się pod price już się nie przenosi?

0

wrzuć kod html tego kodu od paypala

0

Najlepiej jak wrzucisz kod, ale spróbuj tego rozwiązania, dobrze kombinujesz:

$('#cena').val(cenaNowa);
zamiast
$('#cena').val('price');
Bo skoro chcesz wrzucić wyliczenia kalkulatora, które kryją się pod zmienną cenaNowa to dlaczego wpisujesz 'price', tak na chłopski rozum? :D

0

Z cenaNowa też nie działa. Prawdopodobnie dlatego, że ta zmienna cenaNowa jest zdefiniowana wewnątrz funkcji tego kalkulatora. Zastanawia mnie jednak dlaczego w takim razie jeśli zrobię zmienną globalną np. var price12 = 12; i podstawie to w $('#cena').val(price12); to też nie działa. Działa tylko opcja ze stałą liczbą np. : $('#cena').val(12); albo opcja bez niczego wtedy ktoś może sobie sam podać wartość, ale to też mnie nie satysfakcjonuje np. $('#cena').val('');

<form name="_xclick" action="https://www.paypal.com/pl/cgi-bin/webscr" method="post" class="center"> <input type="hidden" name="cmd" value="_xclick"> <input type="hidden" name="business" value="[email protected]"> <input type="hidden" name="currency_code" value="USD"> <input type="hidden" name="item_name" id="nazwa" value=""> <input type="hidden" id="cena" name="amount" value=""> <input type="image" src="http://www.paypal.com/pl_PL/i/btn/x-click-but01.gif" border="0" name="submit" alt="Płać za pomocą systemu PayPal — jest szybki, bezpłatny i bezpieczny!"> </form>

Jeśli ktoś mógłby poświecić mi 15 min na ogarnięcie tego to proszę o kontakt gg - 8267191

0

w takim razie po prostu przesyłasz nieustawioną zmienną. wrzuć cały ten kod, razem z kalkulatorem i obliczeniami

0

Tutaj jest ta część z javasrciptu kalkulatora

var TypePrice = [1,2,3.4,5,6]; 
var NumberPrice = [1,2,3,4,5];

$(document).ready(function(){	
	onChange();
	$('#jqslider').slider({
		min: 1
		max: 10
		slide: function(event, ui){
			$('#amount').val(ui.value);
			onChange();
		}
	});

	$('#sType, #sNumber, #amount, #chbox4, #chbox5, #chbox6').change(function(){
		onChange();
	});

	$('#sType2, #sLevel2, #sType3, #sLevel3, #sNumber2, #chbox1, #chbox2, #chbox3').change(function(){
		onChange2();
	});

	function onChange(){
		var typeIndex = $('#sType')[0].selectedIndex;
		var type = $('#sType').val();
		var numIndex = $('#sNumber')[0].selectedIndex;
		var num = $('#sNumber').val();

		var amount = $('#amount').val();

		$('#icon').attr('src', 'images/'+type.toLowerCase()+'_1.png');
		if(type == "normal" || type == "Unranked")
		{
			$('#sNumber').css('display','none');
			numIndex = 0;
		}
		else
			$('#sNumber').css('display','inline');

		var cena = TypePrice[typeIndex] * NumberPrice[numIndex] * amount;
		cenaNowa = cena;			
		cenaNowa = Math.floor(cenaNowa * 100)/100;

		$('#price').text('Price: '+cenaNowa+' $');
	}
	
//paypal

$('#cenapaypal').val('cenaNowa');
$('#nazwa').val('do zapłaty');
	function distance(){
		var dist1 = $('#sType2')[0].selectedIndex * 5 + parseInt($('#sLevel2').val());
		var dist2 = $('#sType3')[0].selectedIndex * 5 + parseInt($('#sLevel3').val());
		var distances = new Array(dist1, dist2);
		return distances;
	}
});

A tutaj kod html przycisku paypala

<!-- Przycisk paypal -->
               <form name="_xclick" action="https://www.paypal.com/pl/cgi-bin/webscr" method="post" class="center">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="[email protected]">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="item_name" id="nazwa" value="">
<input type="hidden" id="cenapaypal" name="amount" value="">
<input type="image" src="http://www.paypal.com/pl_PL/i/btn/x-click-but01.gif" border="0" name="submit" alt="Płać za pomocą systemu PayPal — jest szybki, bezpłatny i bezpieczny!">
</form>
0

a nie wystarczy, żebyś to:
$('#cenapaypal').val(cenaNowa);
wpisał zaraz pod:
$('#price').text('Price: '+cenaNowa+' $');
?

0

Niestety to też nie zadziałało, po naciśnięciu przycisku wyświetla się coś takiego: http://i.imgur.com/HPuWRf6.png

Jakieś inne pomysły?

0
dzek69 napisał(a):

a nie wystarczy, żebyś to:
$('#cenapaypal').val(cenaNowa);
wpisał zaraz pod:
$('#price').text('Price: '+cenaNowa+' $');
?

mała poprawka wstawiłem pod
$('#cenapaypal').val(cena);

i zadziałało, dzięki wielkie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1