Как передать значения текстовых полей при нажатии на ссылку? - PullRequest
0 голосов
/ 21 февраля 2012

У меня есть две текстовые области. Когда пользователь нажимает текстовую ссылку, то есть «Добавить в корзину», как мне получить значения обеих текстовых областей, которые будут вставлены в третью текстовую область, разделенных разделителем, например «-», и, наконец, для загрузки новой страницы после завершения функции?

Код, который у меня есть на данный момент:

JS:

$('#addtocart').click(function() {
var text1 = $("#inputA").val();
var text2 = $("#inputB").val();
var text3 = text1 + "\n--\n" + text2;
$("#personalisedmsg").val(text3);   
};

HTML:

<textarea id="inputA" class="limited" rows="6">Your top message here.</textarea><br />
<textarea id="inputB" class="limited" rows="6">Your bottom message here.</textarea><br />
<textarea id="personalisedmsg"></textarea>

<br><br>

<a id="addtocart" href="#">Add to Cart.</a>

Спасибо за любую помощь.

Ответы [ 3 ]

2 голосов
/ 21 февраля 2012

Для работы с текстовым полем ...

var text1 = $("#textbox1").val();//textbox1 is the id value of the text area
var text2 = $("#textbox2").val();//textbox2 is the id value of the text area
var text3 = text1 + "\n--\n" + text2;
$("#textbox3").val(text3);//set the next text in textbox3

Загрузка новой страницы не имеет смысла, что вы делали с данными textbox3 раньше?Хотите вместо этого отправить форму?Если это так, вы можете сделать это, например, (при условии, что в документе только одна форма) ...

document.forms[0].submit();

или просто перезагрузить новую страницу, если вы действительно этого хотите ...

window.location = 'newpage.html';//or whatever you page is called

Важное примечание

Если вы используете обработчик щелчка ссылки, если для ссылки установлено свойство href, вы должны убедиться, что отменяете действие по умолчанию (т.е.перезагрузка новой страницы) ...

$('#addtocart').click(function(e) {
    e.preventDefault();//cancel the new page load action

    //rest of code here
});

Рабочий пример

Вот рабочий пример

обратите внимание, что после копирования вашего кода JQuery мне пришлось добавить дополнительную закрывающую скобку ) в конце, чтобы он работал правильно

1 голос
/ 21 февраля 2012

попробуйте что-то вроде этого:

html:

<textarea name="text1"></textarea>
<textarea name="text2"></textarea>
<textarea name="text3"></textarea>

javascript:

jQuery('textarea[name=text3]').val(jQuery('textarea[name=text1]').val() + " --- SEP --- " + jQuery('textarea[name=text2]').val());

jQuery.post('yoururl.php');
// or
window.location = 'yoururl.php';
// or
jQuery('#yourform').submit();
0 голосов
/ 27 февраля 2014

установить атрибут тега, как показано ниже, для перехода на новую страницу со значением текстового поля без отправки страницы.

$("#addtocart").click(function(e) {
var t1=$("#textbox1").val();
var t2=$("#textbox2").val();    
var t3=t1 + "--" + t2;
var url="your url"+"?id="+t3  
$(this).attr("href",url);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...