JQuery get formaction and formmethod
JQuery get formaction and formmethod
我有一个像这样的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 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>
和javascript
function popisgolubova_radiobutton(element)
{
alert($(element).find("[formaction]").val());
var popisgolubova_radiobutton=$("input[name=RadioGroup1]").is(":checked");
if(popisgolubova_radiobutton==false)
{
alert("nop");
}
else
{
$("form#popisgolubova_form").submit();
}
}
首先,我要检查是否有复选框被选中,如果是,我可以提交表单。但问题在于格式、格式方法和格式目标。如何获取它们并提交它们
要获取表单的action或method属性,您可以尝试如下操作:
$(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'));
});
问题是关于
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button attr-formaction
…这是重写
的一种方法https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form attr-action
单击正确设置的提交按钮。你需要检查的地方是在提交的时候——当你确定东西确实被提交的时候。
你用来提交的按钮被存储为:focus——这似乎并没有被存储在事件对象中。
$('form').on("submit", function(event) {
if( $(':focus').is('[formaction]') ) {
console.warn($(':focus').attr('formaction'));
}
if( $(':focus').is('[formtarget]') ) {
console.warn($(':focus').attr('formtarget'));
}
});
if( $(':focus').is('[formaction]') ) {
console.log($(':focus').attr('formaction'));
}
我有这个问题,搜索网页后我找不到合适的答案。最后,我意识到它是如此简单。
当你在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
使用同样的方法
相关文章:
- Selenium WebDriver and JavaScript change
- PHP and Javascript functions
- Javascript Return and if/else
- SetTimeout and clearTimeout in Javascript
- lightbox in html 5 and javascript
- TimelineJS and AngularJS
- timeago.js with datatable and PHP
- javascript button ajax and php
- Ajax and Json with Rails
- Combine onload, onresize and onclick
- php布尔值's小写AND大写和数字布尔值'可以接受
- setTimeout and V8
- Jquery post and onclick
- Moment js and IOS
- Rails 3.2 and Paloma gem
- Backbone, TypeScript, and super
- iframe and JavaScript on different pages
- JSON and jQuery Search
- Flash and External Javascript
- JQuery get formaction and formmethod