我有一个看起来像这样的表格:
<form>
<input type="text" value="" name="order[]" title="Salmon" />
<input type="text" value="" name="order[]" title="Trout" />
<input type="text" value="" name="order[]" title="Halibut" />
<input type="text" value="" name="order[]" title="Crab" />
<button type="submit">Submit</button>
</form>
用户将输入值的数字。当他们提交表单时,我想将每个输入的标题附加到提交中。因此,如果用户为第一个输入字段输入“5”,它将提交值为“Salmon - 5”。
我怎样才能用jQuery实现这个目标?
答案 0 :(得分:1)
我在这里工作http://jsfiddle.net/NLtS9/6/。 将type =“submit”更改为type =“button”
$('button').click(function () {
$('input[name="order[]"]').map(function () {
$(this).val($(this).attr('title') + ' - ' + $(this).val());
alert($(this).val());
});
});
答案 1 :(得分:0)
或许这样的事情?
$('button').click(function () {
$('input[name="order"]').map(function () {
$(this).val($(this).attr('title') + ' - ' $(this).val());
});
('form').submit();
});
答案 2 :(得分:0)
试试这个
$('button').click(function(){
$('input').each(function(index,data) {
$(this).val( $(this).attr('title')+"-"+$(this).val());
});
})
答案 3 :(得分:0)
将按钮设为简单按钮而不是提交按钮,然后执行
$('button').click(function(){
$('input[name="order"]').map(function () {
$(this).val($(this).attr('title') + ' - ' $(this).val());
});
$('form').submit();
})
答案 4 :(得分:0)
在jQuery中使用submit
事件处理程序。此更新的代码在我的localhost
$(document).ready(function(){
$('form').submit(function (ele) {
ele.preventDefault(); // don't submit multiple times
$('input[type="text"]').each(function(_,e){
var old_val = $(e).val();
$(e).attr('data-old', old_val).val($(e).attr('title') + '-' + old_val);
});
this.submit(); // use the native submit method of the form element
$('input[type="text"]').each(function(_,e){
$(e).val($(e).attr('data-old'));
});
});
});
HTML button
input
action
并明确显示<form method="post">
<input type="text" value="" name="order[]" title="Salmon" />
<input type="text" value="" name="order[]" title="Trout" />
<input type="text" value="" name="order[]" title="Halibut" />
<input type="text" value="" name="order[]" title="Crab" />
<input type="submit" value="submit"></button>
</form>
。
{{1}}