在带有分隔符的单击jquery上追加字符串

时间:2013-03-19 06:55:08

标签: javascript jquery concatenation

我有两个文本框,每个文本框都有一个按钮。单击该按钮时,必须附加字符串。假设我单击了它将保存在字符串中的第一个按钮,然后单击第二个按钮,第二个字符串应该附加到第一个按钮。

<input type="text" id="name_1"> <input type="button" id="button_1" value="add">
<input type="text" id="name_2"> <input type="button" id="button_2" value="add">

    <br>
<input type="submit">

$('[id^="button_"]').on("click", function() {
    name = $('#name_'+$(this).attr('id').split('_')[1]).val();
    alert(name);
});

部分工作演示:jsfiddle

示例:john_david其中john是第一个字符串,david是第二个字符串

4 个答案:

答案 0 :(得分:1)

我认为你正在寻找: -

$('[id^="button_"]').on("click", function() {
    var name = "";
    $('[id^="button_"]').each(function(){
        name = name+$('#name_'+$(this).attr('id').split('_')[1]).val();
    });
    alert(name);
});

请参阅DEMO

答案 1 :(得分:0)

您需要将name变量用作global,当click发生append字符串到该变量时。

<强> FIDDLE

答案 2 :(得分:0)

试试这个:

var name = "";
$('[id^="button_"]').on("click", function() {
    if(name == ""){ name = name+$(this).prev("input").val(); }
    else{ name = name+"_"+$(this).prev("input").val(); }
    alert(name);
});

答案 3 :(得分:0)

$('[id^="button_"]').on("click", function() {
  name = $('#name_'+$(this).attr('id').split('_')[1]).val();
  alert(name);
});
$('[type="submit"]').on("click", function() {
  name = $('#name_1').val() + $('#name_2').val();
  alert(name);
});