如果我有以下内容:
<div id="mypanel">
<input id="hiddeninput"></input>
<div class="textbox">
<input>
</div>
<div class="textbox">
<input>
</div>
<div class="textbox">
<input>
</div>
</div>
关于任何这些文本框的模糊,我需要用每个文本框中的值填充隐藏文本框,用“|”分隔如果您有任何建议,或者更安全的角色。无论分隔符是什么,我都必须在用户输入文本时将其删除。
因此隐藏的文本框将填充:
一些文字|更多文字,......等等|以及更多
我用逗号作为数组做了类似的事情:
dataArray.push($(this).val().split(',')[0]);
答案 0 :(得分:4)
编辑:使用$ .map()
更简单$(".textbox input").blur(function() {
var array = $(".textbox input").map(function() {
return this.value;
}).get().join('|'); // replace '|' with any separator
$("#hiddeninput").val(array);
});
<强> DEMO 强>
<强>旧版:强>
var $hiddenInput = $("#hiddeninput");
$(".textbox input").blur(function() {
var array = [];
$(".textbox input").each(function() {
if($(this).val()!="") // ignore this if you don't want to check null
{
array.push($(this).val());
}
});
$hiddenInput.val(array.join("|"));
});
如果您不想检查空白,请删除if条件。
<强> DEMO 强>