大佬教程收集整理的这篇文章主要介绍了jquery – 用于按钮元素的HTML5表单属性的Internet Explorer问题,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
<form id="myform" method="get" action="something.jsp"> <input type="text" name="name" /> </form> <input type="submit" form="myform" />
我使用了以下javascript和jQuery来提交表单,但我遇到了Ajax问题.
我的页面正在重新加载.
document.getElementById("myForm").submit(); $("#myForm").submit();
如何在我的页面不应加载的地方提交表单.
我正在使用Anguler JS Ajax.
如果要将外部输入元素与表单相关联,可以将“阴影”复制为表单内的不可见输入字段,并将事件处理程序附加到表单的onsubmit事件.当用户提交表单时,更新其中的值.
以下polyfill(需要jQuery)模拟该功能.它使具有表单属性的输入元素表现得像它们在表单中:
(function($) { /** * polyfill for html5 form attr */ // detect if browser supports this var sampleElement = $('[form]').get(0); var isIE11 = !(window.ActiveXObject) && "ActiveXObject" in window; if (sampleElement && window.HTMLFormElement && sampleElement.form instanceof HTMLFormElement && !isIE11) { // browser supports it,no need to fix return; } /** * Append a field to a form * */ $.fn.appendField = function(data) { // for form only if (!this.is('form')) return; // wrap data if (!$.isArray(data) && data.name && data.value) { data = [data]; } var $form = this; // attach new params $.each(data,function(i,item) { $('<input/>') .attr('type','hidden') .attr('name',item.Name) .val(item.value).appendTo($form); }); return $form; }; /** * Find all input fields with form attribute point to jQuery object * */ $('form[id]').submit(function(E) { var $form = $(this); // serialize data var data = $('[form='+ $form.attr('id') + ']').serializeArray(); // append data to form $form.appendField(data); }).each(function() { var form = this,$form = $(form),$fields = $('[form=' + $form.attr('id') + ']'); $fields.filter('button,input').filter('[type=reset],[type=submit]').click(function() { var type = this.type.toLowerCase(); if (type === 'reset') { // reset form form.reset(); // for elements outside form $fields.each(function() { this.value = this.DefaultValue; this.checked = this.defaultchecked; }).filter('SELEct').each(function() { $(this).find('option').each(function() { this.SELEcted = this.defaultSELEcted; }); }); } else if (type.match(/^submit|image$/i)) { $(form).appendField({name: this.name,value: this.value}).submit(); } }); }); })(jQuery);
实时版:http://jsfiddle.net/hbxk4e61/
顺便说一句,您可以查看this page以测试您的浏览器当前支持的HTML5功能的数量.例如,我使用的是Chrome 31,它确实支持此属性.
以上是大佬教程为你收集整理的jquery – 用于按钮元素的HTML5表单属性的Internet Explorer问题全部内容,希望文章能够帮你解决jquery – 用于按钮元素的HTML5表单属性的Internet Explorer问题所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。