草庐IT

nested-forms

全部标签

javascript - JQuery/JavaScript : refactoring nested functions

我有这个有趣的jQuery函数。它基本上为链接添加了一个点击处理程序,当它被点击时,它将加载一个表单以允许用户编辑内容。表单通过AJAX提交,完成后会显示成功消息。大纲如下;不用说,这很乱。我可以将每个回调作为类方法。还有哪些其他方法可以重构嵌套函数?我也很想知道在重构后是否有方法在父函数中声明的变量仍然保留其值到嵌套函数$('a.edit').click(function(){//..snipped..//getform$.ajax({success:function(){//addform//submithandlerforform$(new_form).submit(functi

javascript - 输入类型="submit",onclick处理程序调用this.form.submit(),并且不返回任何值

编辑:在考虑回答问题之前,请仔细阅读问题的所有内容。我既不是在生产代码中使用内联事件处理程序的可取性,也不是在实现我所引用的文章所promise的结果的最佳方法。这是关于Javascript语义和浏览器实现细节的问题,而不是关于最佳编码实践的问题。听起来像一场噩梦,对吗?但是我发现一些onlineadvice提倡这样做,以防止再次提交表单:撇开对内联事件处理程序的弊端的任何讨论,我在这里看到的问题是:标签的类型是"submit",因此提交其包含形式是其默认行为;onclick处理程序显式提交包含表单;onclick处理程序不返回false以防止默认行为(请参见1)。凭直觉,我认为单击此

javascript - 如何在 Rails simple_form 中实现 Jasny 的引导文件上传样式扩展?

我想使用Jasny'sTwitterBootstrapextension为我的Railssimple_form图片上传字段设置样式.我已经(成功地)使用CarrierWave上传图片。目前,我的表单有效,代码看起来像这样(为了清楚起见,我删除了一些html、一些表单字段并设计了错误消息代码):resource_name,:url=>registration_path(resource_name),:html=>{class:"form-horizontal",:method=>:put})do|f|%>"username"%>:file,:label=>"uploadaphoto"%>

javascript : how to distinguish between selected element list and form

这是脚本:http://jsbin.com/itusut/6/edit你好,我有功能:functionon(t,e,f){if(e.length){varl=e.length,n=0;for(;n如果我们这样做varhandle=document.getElementsByClassName('some-class');然后handle是一个节点列表。如果我们这样做varhandle=document.getElementById('an-id');然后handle是单节点。问题是,当我选择时它返回array而不是单个元素。所以,我的on功能失败。函数使用elm.length筛选。一切

javascript - Angular:mat-form-field 必须包含一个 MatFormFieldControl

我正在尝试添加一个带有自定义电话号码输入控件的表单域。我使用了来自https://material.angular.io/components/form-field/examples的电话示例.代码如下:phoneIncludeareacodeimport{FocusMonitor}from'@angular/cdk/a11y';import{coerceBooleanProperty}from'@angular/cdk/coercion';import{Component,ElementRef,Input,OnDestroy}from'@angular/core';import{Fo

javascript - 我无法让 onChange 触发 dijit.form.Select

我似乎无法将onchange事件正确附加到dijit.form.Select小部件。但是,我是Web开发的新手,所以我可能会做一些完全愚蠢的事情(尽管,据我所知(并且我已经阅读了我能找到的所有文档)我不是)。我确保body类与dojo主题相匹配,我为我使用的所有小部件(和dojo.parser)执行dojo.require(),但仍然是nada。我使用的代码是:dojo.addOnLoad(function(){var_query=dojo.query('.toggle');for(variin_query){dojo.connect(_query[i],'onchange',func

javascript - 动态禁用 Contact Form 7 字段验证

在我的联系表单7中,我有两个单选按钮,它们根据用户所做的选择显示和隐藏联系表单中的字段。当您单击“电话”单选按钮时,脚本(JS而不是jQuery)会确保隐藏电子邮件字段并且仅显示电话字段。当您单击电子邮件单选按钮时,将显示电子邮件字段并隐藏电话字段。该部分完全按照我希望的方式工作。我遇到的问题是我无法弄清楚如何阻止ContactForm7验证隐藏字段。例如,如果客户只想输入他们的电话号码而不是他们的电子邮件,插件由于电子邮件字段未填写,他们在尝试提交时仍会给出错误。这是代码-JS:window.onload=radioCheck;functionradioCheck(){if(docu

javascript - document.write() 与插入 DOM 节点 : preserve form information?

考虑两个分别在其正文中包含以下内容的网页:document.writeln('')和vart=document.createElement('textarea');document.body.appendChild(t);(将它们视为更大事物的一部分,其中文本区域必须从JavaScript生成并且不能硬编码到页面中)。它们都产生相同的输出,但前者被认为是“坏”的,而后者被认为是“正确”的方式。(对吗?)另一方面,如果您在页面中输入内容然后刷新它,或者转到其他地方并点击返回,那么在前一种情况下,您在文本区域中输入的内容会被保留,而在后一种情况下它是丢失。(至少在Firefox上是这样。)

javascript - 错误 : [$compile:multidir] Multiple directives [form, 表单] 请求 'form' Controller :<form ng-form ="">

我在用angularjs构建的表单上遇到此错误。`错误:[$compile:multidir]多个指令[form,form]请求'form'Controller:{{job.role}}{{job.salary}}{{job.company}}Submit最初我在data-ng-controller中有表格,我把它拿出来看看是否Controller可能是问题所在..请询问您是否认为我需要发布更多代码,我正在使用angulars原生路由系统 最佳答案 这些中的每一个都或多或少相同,并且指的是form指令:所以你可以做或者简单地,在这两

javascript - 在 Angular 中动态重置 ng-form

我查看了以下内容:ResetForminAngularJS和Angularclearsubformdataandresetvalidation从这些我试图创建一个动态表单重置/清除函数,它看起来像下面这样:$scope.clearSection=function(formName){$scope.formName.$setPristine();$scope.formName.$setUntouched();};是否可以在表单名称动态传递给此函数的Angular中创建这样的动态清除函数? 最佳答案 示例plunkr:http://pl