data передача значения ссылкой html
Здравствуйте.
Сразу прошу прощения за вопрос который относится к азам. Я пишу корзину магазина. Нашел код в Интернете и модифицировал под себя.
<a class="sample2" href="#" data-num="10" data-text="555" "><b>1111</b></a>
<a class="sample2" href="#" data-num="12" data-text="666" "><b>222</b></a>
<script src=\"../js/jquery.min.js\" type=\"text/javascript\"></script>
<script language=\"javascript\" type=\"text/javascript\">
$('.sample2').click( function(data-num) {
$.ajax({
var num = $(this).attr('data-num');
type: 'POST',
url: 'zakaz.php?action=new',
data: 'cookies=num&id_tovar=2text&kol_vo=5&del=0',
success: function(data){
$('.results').html(data);
}
});
});
</script>
<div class=\"results\">Ждем ответа</div>
Скрипит работает, но значения переменных id_tovar и kol_vo могу только могу задавать только в самой функции. А желаю передавать через тег data. Подскажите как передать значение data в значение скрипит и подставить их значения вместо значений 2 и 5 в скрипите. Заранее спасибо. О себе немного(по сути пишу свою примитивную CMS в одиночку) знаю РНР, Если есть желание можно просто ткнуть носом где подробно написано про это. А так же интересует разница между одинарными и двойными кавычками в скрипте. . |
[js]var a0=2,a1=5;
..... data: 'cookies=num&id_tovar='+a0+'text&kol_vo=5'+a1+'del =0', |
krasavchik,
$('.sample2').click( function() {
var num = $(this).data('num'); // получит текущее значение из аттрибута data-num
$.ajax({
type: 'POST',
url: 'zakaz.php?action=new',
data: 'cookies=num&id_tovar=2text&kol_vo=' + num + '&del=0',
success: function (data) {
$('.results').html(data);
}
});
});
|
Получаю ответ undefined
Сейчас стараюсь решить.Всем кто ответил спасибо. Помогли продвинутся немного. |
$('.sample2').click( function() {
var _this = $(this),
href = _this.attr('href'),
text = _this.attr('data-text'),
num = _this.attr('data-num');
/*if(typeof num == "undefined")
alert("Undefined");
else
alert("Not undefined");
*/
$.ajax({
type: 'POST',
url: 'zakaz.php?action=new',
data: 'cookies=num&id_tovar=' + text +'text&kol_vo=' + num + '&del=0',
success: function (data) {
$('.results').html(data);
}
});
});
Вот так работает. Понять почему первый вариант не работал. Спасибо дали толчек и знания) |
Возник еще вопрос как из формы передать значение методом пост? Исходные данные такие хе. Сама форма такая. Спасибо.
<script src=\"../js/jquery.min.js\" type=\"text/javascript\"></script> <script src=\"../js/zakaz.jquery.min.js\" type=\"text/javascript\"></script> $text <table summary=\"Контактные данные\" > <tr> <td style=\"text-align: center; background:#99ff99; \"> <font color=\"#CC0000\"> <b>Заказать Online </b></font> цемент, сухие смеси. </td> </tr> <tr> <form class=\"zakaz\" action=\"#\" method=\"post\"> <td style=\"text-align: center; background:#ccffff; \" > <input type=\"text\" name=\"name\" value=\"Имя\" SIZE=30 MAXLENGTH=50 onfocus=\"this.value='';\" /> <input type=\"text\" name=\"phone\" value=\"Контактный телефон\" SIZE=30 MAXLENGTH=15 onfocus=\"this.value='';\" /> <input type=\"text\" name=\"email\" value=\"Контактный e-mail\" SIZE=30 MAXLENGTH=50 onfocus=\"this.value='';\" /> </td> <tr> <td style=\"text-align: center; background:#ccffff; \" > <textarea rows=\"3\" cols=\"50\" name=\"comment\" style=\"width: 99%\" placeholder=\"Адрес доставки или другие ваши комментарии.\"></textarea> </td> <tr> <td colspan=\"2\" style=\"text-align: center; background:#ccffcc; \" > <input class=\"zakaz\" type=submit value=\"Заказать\"> (<input type=\"checkbox\" name=\"cookies\" value=\"0\">Не сохранить контактные данные для следущих заказов) </td> </tr> </TABLE> </form> |
как то страноо у тебя закрывается тег form, почему он у тебя открывается внутри таблицы, а закрывается вне таблицы, сделать надо так и добавим хиддены для отправки kol_vo и id_tovar постом:
<script src=\"../js/jquery.min.js\" type=\"text/javascript\"></script>
<script src=\"../js/zakaz.jquery.min.js\" type=\"text/javascript\"></script>
$text
<form class=\"zakaz\" action=\"#\" method=\"post\">
<table summary=\"Контактные данные\" >
<tr>
<td style=\"text-align: center; background:#99ff99; \">
<font color=\"#CC0000\"> <b>Заказать Online </b></font> цемент, сухие смеси.
</td>
</tr>
<tr>
<td style=\"text-align: center; background:#ccffff; \" >
<input type=\"hidden\" name=\"id_tovar\" value="2">
<input type=\"hidden\" name=\"kol_vo\" value="5">
<input type=\"text\" name=\"name\" value=\"Имя\" SIZE=30 MAXLENGTH=50 onfocus=\"this.value='';\" />
<input type=\"text\" name=\"phone\" value=\"Контактный телефон\" SIZE=30 MAXLENGTH=15 onfocus=\"this.value='';\" />
<input type=\"text\" name=\"email\" value=\"Контактный e-mail\" SIZE=30 MAXLENGTH=50 onfocus=\"this.value='';\" />
</td>
<tr>
<td style=\"text-align: center; background:#ccffff; \" >
<textarea rows=\"3\" cols=\"50\" name=\"comment\" style=\"width: 99%\" placeholder=\"Адрес доставки или другие ваши комментарии.\"></textarea>
</td>
<tr>
<td colspan=\"2\" style=\"text-align: center; background:#ccffcc; \" >
<input class=\"zakaz\" type=submit value=\"Заказать\"> (<input type=\"checkbox\" name=\"cookies\" value=\"0\">Не сохранить контактные данные для следущих заказов)
</td>
</tr>
</TABLE>
</form>
|
| Часовой пояс GMT +3, время: 22:13. |