Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   проблема с jquery $.get (https://javascript.ru/forum/jquery/16129-problema-s-jquery-%24-get.html)

zverko 27.03.2011 17:39

проблема с jquery $.get
 
Доброго времени суток.
Сразу скажу что с js я знаком по стольку по скольку.

Знакомый попросил написать небольшой инет магазинчик для его фирмы и одно из условий было чтоб при нажатии кнопки заказать страница не обновлялась, это и оказалось самой большой проблемой.

Нужно сразу сказать что все это самописный компонент к joomla.

В фаиле есть формы динамически создающиеся php скриптом
к каждому id добавляеться цифра $i
<form id="myform1" method='post'>
<input id="kol1" name="kol" value=1 type="text" size="3"> 
<INPUT TYPE=HIDDEN id="kod1" name="kod" VALUE="00814">
<p class="red" id="alert1"></p> 
<input type="button" value="Заказать" onclick="addForm(1)" />
</FORM>

<form id="myform2" method='post'>
<input id="kol2" name="kol" value=1 type="text" size="3"> 
<INPUT TYPE=HIDDEN id="kod2" name="kod" VALUE="015814">
<p class="red" id="alert1"></p> 
<input type="button" value="Заказать" onclick="addForm(2)" />
</FORM>


тем самым все формы имеют уникальные id

дальше есть js скрипт рожденный в процессе курения мануалов
<script type="text/javascript" src="jquery.js">
function addForm(ia)
{
var x1=document.getElementById("kol"+ia).value;
var x2=document.getElementById("kod"+ia).value;
 $.get("index.php", {option:"com_basket", act: "add",  kod: x2, kol: x1 }, ok(ia));
 
 }

function ok(ia)
 document.getElementById("alert"+ia).innerHTML = "<img height=\"16\" width=\"16\" border=\"0\" src=\"../../images/foto/tick.png\">";
 }
</script>


изначально в место строки $.get была

myWin= open("index.php?option=com_basket&act=add&kod="+x2+"&kol="+x1, "displayWindow","width=40,height=30,status=no,toolbar=no,menubar=no,screenX=200,screenY=300");
ok(ia);


она открывала в новом окне, выполнялся php скрипт и закрывался с помощью js "close()"

собственно проблема в неработоспособности скрипта использующего jquery.

lalala 27.03.2011 18:09

$.get("index.php", {option:"com_basket", act: "add",  kod: x2, kol: x1 }, ok(ia));

попробуйте так
$.get("index.php", {option:"com_basket", act: "add",  kod: x2, kol: x1 }, function() { ok(ia)});

zverko 27.03.2011 18:24

Не выходит (
вообще ноль реакции

melky 28.03.2011 17:33

function addForm(ia)
{
var x1=document.getElementById("kol"+ia).value;
var x2=document.getElementById("kod"+ia).value;

jQuery.get('index.php', {'option:'com_basket', 'act':'add', kod:x2, kol:x1 }, function(){ document.getElementById('alert'+ia).innerHTML = '<img height="16" width="16" border="0" src="../../images/foto/tick.png">'; })

}


да вроде должно работать )

единственное, функция $. может, в ней дело?

если и это не поможет, то посмотрите в firebug :
  • идут ли пакеты на index.php (может не тот путь указан)
  • есть ли ошибки в скрипте ?

lalala 28.03.2011 18:35

<script type="text/javascript" src="jquery.js"> 
function addForm(ia) 
{ 
var x1=$("#kol"+ia).val(); 
var x2=$("#kod"+ia).val(); 
 JQuery.get("index.php", {option:"com_basket", act: "add",  kod: x2, kol: x1 }, function () {
$("#alert"+ia).html("<img height=\"16\" width=\"16\" border=\"0\" src=\"../../images/foto/tick.png\">");
});
}

cмущает еще сурс картинки, оно вобще должно быть таким? ( я конешн, не знаток джумлы, но вроде как лишний слэш и точки)

zverko 29.03.2011 22:55

Ошибок в jquery нет, юрлы указанны правельно, есле честно то чертовщина какая то:blink:
Есть ошибки с moolools.js , может это как то связанно :blink:

lalala 29.03.2011 23:23

передаваемые параметры, мб дело в скобках?:)
{"option":"com_basket", "act": "add", "kod": x2, "kol": x1 }

Freak_style 31.03.2011 01:58

Попробуй вместо button сделать input type="reset" она не должна форму отправлять.

lalala 31.03.2011 10:16

Цитата:

Сообщение от Freak_style
Попробуй вместо button сделать input type="reset" она не должна форму отправлять.

а кнопки button отправляют форму только по желанию разработчика или я не прав?
тип reset вобще очистит форму (будет очень весело если ДО отправки)

Freak_style 31.03.2011 21:23

Цитата:

Сообщение от lalala (Сообщение 98645)
а кнопки button отправляют форму только по желанию разработчика или я не прав?
тип reset вобще очистит форму (будет очень весело если ДО отправки)

Я советую так потому что у меня подобная проблема была:
если type button или submit находятся в <form> то при нажатии форма отправляется. reset по идее может и должен перезагружать форму но у меня ничего не перезагружается :p можно привязывать любой евент и юзать как хочешь.


Часовой пояс GMT +3, время: 00:33.