2013-08-31 31 views
8

我有這樣的jQuery的提交表單與點擊事件有新的動作

<form name="test" action="test/test_new" /> 
<input type="text" /> 
<input type="submit" value="search"/> 
<input type="button" value="download"/> 

我需要即使對下載按鈕,點擊的形式。例如。如果我點擊下載,它應該提交爲text/text_new.xls而不是text/text_new。我該怎麼做。

回答

26

給id來按鈕,並嘗試這個

$('#downloadButton').click(function(){ 
    $('form[name=test]').setAttrib('action','test/test_new.xls'); 
    $('form[name=test]').submit(); 
}); 
+0

如果輸入[類型=提交]有id或名稱與「提交」值比這樣的代碼不工作!看看http://stackoverflow.com/a/6299551/987850 – 23W

1

HTML

<input type="button" value="download" id="dwnld"/> 

JS

$('#dwnld').click(function(){ 
var form = $(this).closest('form'); 
form.attr('action',form.attr('action')+'.xls').trigger('submit'); 
}); 

HTML

<form name="test" action="test/test_new" id="formID"/> 
<input type="button" value="download" id="dwnld"/> 

JS

$('#dwnld').click(function(){ 
form=$('#formID') 
form.attr('action',form.attr('action')+'.xls').trigger('submit'); 
}); 
+0

他說他希望將表單提交到'text/text_new.xls'而不是'test/test_new' – commit

+0

@commit已更新。 –

+0

您使用的任何特定原因.'trigger('submit')'vs'.submit()'? – Zapnologica

1

HTML

<form name="test" id="form-id" action="test/test_new" /> 
<input type="text" /> 
<input type="button" class="submit" value="search" data-action="test/test_new" /> 
<input type="button" class="submit" value="download" data-action="test/test_new.xls" /> 
<input type="button" class="submit" value="another" data-action="test/test_newer" /> 

JS

$(document).on('click', 'input.submit', function() { 
    var form = $('#form-id'); 
    var action = $(this).data('action'); 
    form.attr('action', action); 
    form.submit(); 
}); 
相關問題