我有两个文本框,每个文本框都有一个按钮。单击该按钮时,必须附加字符串。假设我单击了它将保存在字符串中的第一个按钮,然后单击第二个按钮,第二个字符串应该附加到第一个按钮。
<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是第二个字符串
答案 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);
});