Javascript JQuery get formaction和formmethod
我有一个像这样的aJavascript JQuery get formaction和formmethod,javascript,jquery,forms,Javascript,Jquery,Forms,我有一个像这样的a <form id="popisgolubova_form"> <input name="pregledaj" type="button" formaction="uredigoluba.php" formmethod="post" formtarget="_self" value="pregledaj" class="button" onclick="popisgolubova_radiobutton(this)"> <input
<form id="popisgolubova_form">
<input name="pregledaj" type="button" formaction="uredigoluba.php" formmethod="post" formtarget="_self" value="pregledaj" class="button" onclick="popisgolubova_radiobutton(this)">
<input name="rodovnik" type="button" formaction="rodovnik.php" formmethod="post" formtarget="_blank" value="rodovnik" class="button" onclick="popisgolubova_radiobutton()">
<input name="podaci" type="button" value="poodaci" formaction="podaciogolubu.php" formmethod="post" formtarget="_blank" class="button" onclick="popisgolubova_radiobutton()">
</form>
首先,我要检查是否选中了任何复选框,如果是,我可以提交表单。但问题在于形式、形式方法和形式目标。如何获取并提交它们要获取表单的操作或方法属性,可以尝试以下操作:
$(function() {
var action = $("#formid").attr('action'),
method = $("#formid").attr('method');
});
希望这能帮助你找到解决问题的方法
<form id="popisgolubova_form">
<input name="pregledaj" type="button" formaction="uredigoluba.php" formmethod="post" formtarget="_self" value="pregledaj" class="button postForm"/>
</form>
$(document).on('click', '.postForm', function () {
$('#popisgolubova_form').attr('action', $(this).attr('formaction'));
$('#popisgolubova_form').attr('method', $(this).attr('formmethod'));
$('#popisgolubova_form').attr('formtarget', $(this).attr('formtarget'));
});
$(文档).on('click','.postForm',函数(){
$('popisgolubova_form').attr('action',$(this.attr('formaction'));
$('popisgolubova_form').attr('method',$(this.attr('formmethod'));
$('popisgolubova_form').attr('formtarget',$(this.attr('formtarget'));
});
所以问题是关于不幸命名的
…这是一种超越
每次单击一个正确设置的提交按钮。你想要检查的地方是在提交时——当你确定事情确实在提交时
您用来提交的按钮存储为:focus-此时似乎不会以其他方式存储在事件对象中
$('form').on("submit", function(event) {
if( $(':focus').is('[formaction]') ) {
console.warn($(':focus').attr('formaction'));
}
if( $(':focus').is('[formtarget]') ) {
console.warn($(':focus').attr('formtarget'));
}
});
我有这个问题,在网上搜索后,我找不到一个正确的答案。最后,我意识到这很简单 当您在
form.submit
上添加事件时,您有一个包含e.originalEvent.submitter
的事件参数,只需按如下方式使用它:
$('form').submit(function(e){
var url = form.attr('action');
if (e.originalEvent.submitter) {
var frmAction = $(e.originalEvent.submitter).attr('formaction');
if (frmAction)
url = frmAction;
}
,.....
});
您也可以对
formmethod
使用相同的内容。您的html标记错误,复选框在哪里?听起来像是html
来自另一个页面,而“script”来自另一个页面。我省略了复选框,因为它可以正常工作,所以我只省略了它们。我需要答案如何得到那个formaction我不确定它是否能工作,因为我需要从那个按钮得到formaction和formmethod,而不是从整个表单
if( $(':focus').is('[formaction]') ) {
console.log($(':focus').attr('formaction'));
}
$('form').submit(function(e){
var url = form.attr('action');
if (e.originalEvent.submitter) {
var frmAction = $(e.originalEvent.submitter).attr('formaction');
if (frmAction)
url = frmAction;
}
,.....
});