我有一个表单,我想在提交之前对其进行特殊处理。
我知道我可以使用 JQuery 捕获“提交”事件,但是如何更改从回调中实际提交的值?
最佳答案
有几个选项:您可以在实际提交之前替换表单字段。您可以为此使用添加的隐藏字段。我不喜欢这个选项,特别是因为您可能会遇到验证问题,必须撤消更改。
您可以通过 AJAX 进行发布,仅发布您的值,然后根据结果采取一些适当的操作。在这种情况下,原始帖子永远不会发生。这就是我可能会做的。通过这种方式,您的原始表单保持不变,并且您可以处理服务器端验证,而无需撤消表单上的任何内容。
$(function() {
$('form').submit( function() {
var $form = $(this);
var data = // ... generate your custom data ...;
$.post( $form.attr('action'), data, function(result) {
// ... do something based on result
});
return false; //cancel original submit
});
});
关于javascript - 提交时更改提交表单的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4511316/