表单本质上是一个容器,可用于保存几种类型数据的任何数量的任何数量的子集。 HTML表单用于将数据传递到服务器。 VB和C#表单是用于与用户交互的窗口。
我有以下简单的 HTML 表单: 我有以下简单的 HTML 表单: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <script> function onBlur() { console.log("blur event"); } function onSubmit(e) { console.log("submit event", e); e.preventDefault(); } </script> </head> <body> <form onSubmit="onSubmit(event)"> <input name="code" onBlur="onBlur()" /> <button>Submit</button> </form> </body> </html> 按回车键提交表单时,输入不会失去焦点,并且永远不会调用模糊事件。 有办法禁用这种行为吗?我可以查询输入并调用模糊函数,但我想知道是否有更干净的方法来做到这一点。 但我想知道是否有更干净的方法来做到这一点。 是的,您可以拨打 blur() 上的 document.activeElement: document.activeElement.blur() <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <script> function onBlur(e) { console.log("blur event", e.target); } function onSubmit(e) { e.preventDefault(); document.activeElement.blur() console.log('Submit', e.target) } </script> </head> <body> <form onSubmit="onSubmit(event)"> <input name="code" /> <button>Submit</button> </form> </body> </html>
React:使用 @conform-to/react 中的 getInputProps 将“key”Prop 传播到 JSX 中
我遇到了一个问题,React 抱怨一个关键 prop 被传播到 JSX 元素中,即使我没有明确地将它作为 props 的一部分传递。 这是相关的代码片段: <
我从上一个问题中获取了以下表单操作。 我从上一个问题中获取了以下表单操作。 <form name="client" class="client-form2" method="post" action="https//domain.com/subfolder/client/?client_id=<?php echo $client_id; ?>" onsubmit="return validate();"> 这是显示任何更改的原始页面(它是更新表单) 但是,当它传递到页面时,显示的 url 仅为 /client/ 由于它是一个表单,如果单击提交按钮,它将转到 https//domain.com/subfolder/client 如果再次单击提交表单,它将转到 https://domain.com/client 这是不存在的。 检查源代码后,表单会显示正确的 URL。 我错过了什么? 行动中缺少“:)
WordPress:尝试上传图像,media_handle_upload() 不起作用
尝试制作一个表单将图像上传到Wordpress,然后将该图像设置为帖子的缩略图。但我似乎无法让 media_handle_upload() 函数正常工作。 表单的输入...
我使用 form_valid() 保存表单中的数据,并使用 get_success_url 中的条件重定向到特定页面,但 form_valid() 调用了两次。 我看到有些人解决了: ...
我尝试使用独立于传递的模型的模型形式。 我的目标是拥有一个数据库表列表,用户可以在其中选择然后显示的表。然后在这个里面...
我正在尝试思考验证表单的两个电子邮件字段的最佳方法:我有一个电子邮件字段和一个重新输入电子邮件字段,我想比较它们以查看它们是否匹配。如果没有那就
如何在 Angular 2 中使用按钮触发 ngModelChange
我使用 *ngFor 来填充我的表格。 {{stu.name}} 我使用 *ngFor 来填充我的表格。 <tr *ngFor= "stu in students"> <td>{{stu.name}}</td> <td><input type="checkbox" ngModel="isChecked" (ngModelChange)="addID(stu.id)</td> </tr> 然后我在桌子外面有一个按钮。 <button (click)="selectAllID()">select all</button> 然后我的组件为: studentID=[]; isChecked=false; addID(id:number){ this.student.push (id); //I do other thing with id } selectAllID (){ If (this.isChecked) this isChecked = false; else this isChecked = true } 问题是: 如果我选中单个复选框,则会执行 addID() 函数。但是,如果我单击 select all 按钮,复选框就会被选中。但是 addID() 函数没有被调用。 当我使用 ngModelChange 按钮时,如何触发 select all 功能,以便我全部选中 ids 输入控件与 ngModelChange 指令的绑定只有一种方式。但要更新视图,您应该将控件绑定到 ngModel。 <input type="checkbox" [ngModel]="isChecked" (ngModelChange)="addID(stu.id)"> 谢谢大家。我终于解决了这个问题。这就是我所做的: 我使用 selectAll() 函数自动将所有 id(我从加载表的源中获得的 id)加载到数组中。和 我将 isChecked 的值设置为 true 或 false。
调度(addIncome())}> 类型 '() => { 有效负载:未定义;类型:“收入/addIncome”; }' 不可分配给类型 '(formData: FormData) =>... <form ref={formRef} action={() => dispatch(addIncome())}> 输入 '() => { 有效负载:未定义;类型:“收入/addIncome”; }' 不可分配给类型 '(formData: FormData) => void |承诺'。 类型 '{ 有效负载:未定义;类型:“收入/addIncome”; }' 不可分配给类型 'void |承诺'.ts(2322) index.d.ts(3209, 9):预期类型来自属性“action”,该属性在“DetailedHTMLProps”类型上声明 我收到此错误。我该如何处理它? form action 属性的类型为 (formData: FormData) => void | Promise',例如一个接收表单的 formdata 且不返回任何内容或返回一个 Promise 对象的函数(即一个 async 函数处理程序)。您使用的函数不接受 formData 参数,并通过 隐式箭头函数 return 返回 dispatch 结果。 将您的使用情况更新为: 接受争论 使用 void return 示例: 打字稿 <form ref={formRef} action={(_formData: FormData) => { dispatch(addIncome()); }} > ... </form> Javascript <form ref={formRef} action={(_formData) => { // You might be able to omit arg in JS dispatch(addIncome()); }} > ... </form> 考虑到您似乎没有使用服务器操作,并且如果您需要做的只是在提交表单时分派操作,那么也许 onSubmit 处理程序更合适。 示例: <form ref={formRef} onSubmit={(e) => { e.preventDefault(); // don't submit form and reload page dispatch(addIncome()); }} > ... </form>
我尝试使用javascript动态创建单选按钮(对于我制作的测验项目),但我遇到了问题。 单选按钮已创建,我可以在屏幕上看到它们,但对于某些...
我有一个 mdi 父窗体,当单击屏幕上的特定按钮时,会打开一个新的子窗体。当这个表单加载时,需要调用数据库来检索信息,问题是......
我在 SvelteKit 中提交表单后遇到重定向问题。 我有一些需要身份验证的路线,在渲染之前我会检查用户是否经过身份验证。 路线 │ ├── +页面。
在我的 winform 应用程序中,我有一个表单在 for 循环期间创建其他表单。该父表单保持隐藏状态,纯粹用于处理。 我将处理代码从专业版移开...
甚至可以制作? ->add('产品', CollectionType::class, [ 'entry_type' => EntityType::class, 数组( '数据' => $选项['产品'], ‘占位符’=&...
我想在用户离开字段后验证表单字段。我写了我的html如下 我想在用户离开字段后验证表单字段。我写的html如下 <input type="text" onfocusout="validateIp()"formControlName="ip_address" (input)="onIpChange($event.target.value)" pattern="^[a-zA-Z0-9.]*$"class="form-control form-control-sm" id="IP_Address"> 下面是我的打字稿代码 validateIp(){ console.log('validateIp is called'); } onfocusout 未按预期工作。以下是我收到的错误 Uncaught ReferenceError: validateIp is not defined at HTMLInputElement.onfocusout 我也尝试过 onblur 但事件没有被触发 使用ReactiveForms时,可以验证onBlur this.form=new FormGroup({ ip_address:new FormControl(null,{validators: Validators.required, updateOn: 'blur'}) }) 或者使用formBuilder this.form = this.fb.group({ ip_address: ["", { validators: [Validators.required], updateOn: "blur" }], }); 您似乎位于 Angular 组件内,并且正在尝试调用该组件的方法。 鉴于 onIpChange 与 validateIp 在同一组件中定义,您必须将 HTML 代码从 更改为 <input type="text" onfocusout="validateIp()" formControlName="ip_address" (input)="onIpChange($event.target.value)" pattern="^[a-zA-Z0-9.]*$"class="form-control form-control-sm" id="IP_Address"> 到 <input type="text" (focusout)="validateIp()" formControlName="ip_address" (input)="onIpChange($event.target.value)" pattern="^[a-zA-Z0-9.]*$" class="form-control form-control-sm" id="IP_Address"> 我知道这是一篇旧文章,但您可以通过使用 CSS 和以下内容来完成此操作: input:invalid { border-color: red; border-style: solid; } 当按 Tab 键移出输入字段时,表单将标记validity:patternMismatch: true,该值由 CSS 拾取。 这是在输入元素上使用pattern="..." 属性来实现表单验证功能时的情况。
我正在构建一个使用 JWT 进行身份验证的银行应用程序。提交登录表单后,服务器给出响应,但由于某种原因我无法从服务器获取数据,它
如何使用 Enter 提交消息以及 Shift + Enter 新建一行?
我有一个带有 Quill 版本 1.3.7 的 React 应用程序。 对于上下文/复习:Quill 文本编辑器中 Enter 的默认行为是创建一个新行。我想改变这一点。 我写了下面的函数所以
在 Quill.js 中,我希望按 Enter 提交消息并按 Shift + Enter 创建新行
我有一个带有 Quill 版本 1.3.7 的 React 应用程序。 对于上下文/复习:Quill 文本编辑器中 Enter 的默认行为是创建一个新行。我想改变这一点。 我写了下面的函数所以