应用内置 JavaScript 行为

上次更新日期: 2021年4月27日

使用本主题了解如何在 Adobe Dreamweaver 中应用内置 JavaScript 行为。

使用内置行为

Dreamweaver 附带的行为已编写为可在现代浏览器中工作。这些行为在较旧的浏览器中将失败,并且不会产生任何后果。

注释

Dreamweaver 操作经过精心编写,可在尽可能多的浏览器中工作。如果您手动删除 Dreamweaver 操作中的代码,或将其替换为您自己的代码,可能会失去跨浏览器兼容性。

尽管 Dreamweaver 操作的编写是为了最大化跨浏览器兼容性,但有些浏览器根本不支持 JavaScript,并且许多浏览网页的用户在其浏览器中关闭了 JavaScript。为了获得最佳跨平台效果,请提供包含在 <noscript> 标记中的替代界面,以便没有 JavaScript 的用户可以使用您的网站。

应用“调用 JavaScript”行为

调用 JavaScript 行为会在发生事件时执行自定义函数或 JavaScript 代码行。(您可以自己编写脚本,也可以使用 web 上各种免费提供的 JavaScript 库中的代码。)

选择对象,然后从"行为"面板的"添加行为"菜单中选择"调用 JavaScript"。
键入要执行的确切 JavaScript,或键入函数名称。

例如,若要创建一个“后退”按钮,您可以键入 if (history.length > 0){history.back()}。 如果您已将代码封装在函数中,请仅键入函数名称(例如,hGoBack())。

单击“确定”,验证默认事件是否正确。

应用改变属性行为

使用"更改属性"行为来更改对象属性之一的值(例如,div 的背景颜色或表单的操作)。

注释

仅当您非常熟悉 HTML 和 JavaScript 时才使用此行为。

选择对象,然后从"行为"面板的"添加行为"菜单中选择"更改属性"。
从"元素类型"菜单中,选择元素类型以显示该类型的所有已标识元素。
从“元素 ID”菜单选择一个元素。
从"属性"菜单中选择属性,或在框中输入属性的名称。
在"新值"字段中输入新属性的新值。
单击“确定”,验证默认事件是否正确。

应用“检查插件”行为

使用"检查插件"行为根据访问者是否安装了指定插件将其发送到不同页面。例如,如果访问者安装了 Shockwave,您可能希望他们转到一个页面,如果没有安装,则转到另一个页面。

注释

您无法使用 JavaScript 在 Internet Explorer 中检测特定插件。但是,选择 Flash 或 Director 将向您的页面添加适当的 VBScript 代码,以在 Windows 上的 Internet Explorer 中检测这些插件。Mac OS 上的 Internet Explorer 中不能实现插件检测。

选择对象,然后从"行为"面板的"添加行为"菜单中选择"检查插件"。
从"插件"菜单中选择插件,或单击"输入"并在相邻框中键入插件的确切名称。

您必须使用在 Netscape Navigator 的"关于插件"页面中以粗体显示的插件确切名称。(在 Windows 中,选择 Navigator 的"帮助">"关于插件"命令;在 Mac OS 中,从 Apple 菜单中选择"关于插件"。)

在"如果找到,转到 URL"框中,为拥有该插件的访问者指定一个 URL。

如果指定远程 URL,您必须在地址中包含 http:// 前缀。如果将字段留空,访问者将停留在同一页面上。

在"否则,转到 URL"框中,为没有该插件的访问者指定一个替代 URL。如果将字段留空,访问者将停留在同一页面上。
指定无法检测插件时如何操作。 默认情况下,当无法检测时,访问者将被发送到"否则"框中列出的 URL。如需将访问者发送到第一个(如果找到)URL,请选择"如果无法检测则始终转到第一个 URL"选项。选择该选项时,实际上表示"假设访问者拥有该插件,除非浏览器明确指示未安装该插件"。通常,如果插件内容对您的页面不可或缺,请选择此选项;否则不要选择。
注释

此选项仅适用于 Internet Explorer;Netscape Navigator 始终可以检测插件。

单击“确定”,验证默认事件是否正确。

应用拖动 AP 元素行为

"拖动 AP 元素"行为可让访问者拖动绝对定位 (AP) 元素。使用此行为可创建拼图、滑块控件和其他可移动界面元素。

您可以指定访客可以拖动 AP 元素的方向(水平、垂直或任何方向)、访客应将 AP 元素拖动到的目标、如果 AP 元素在目标的一定像素范围内是否将 AP 元素捕捉到目标、当 AP 元素到达目标时要执行的操作等。

由于必须在访问者可以拖动 AP 元素之前调用"拖动 AP 元素"行为,因此您应该将"拖动 AP 元素"附加到 body 对象(使用 onLoad 事件)。

选择"插入">"布局对象">"AP Div",或单击"插入"面板上的"绘制 AP Div"按钮,然后在"文档"窗口的"设计"视图中绘制 AP Div。
单击文档窗口左下角标记选择器中的 <body>
从"行为"面板的"添加行为"菜单中选择"拖动 AP 元素"。

如果"拖动 AP 元素"不可用,您可能选择了一个 AP 元素。

在“AP 元素”弹出菜单中,选择此 AP 元素。
从"移动"弹出菜单中选择"受限"或"不受限"。

不受限移动适合拼图和其他拖放游戏。对于滑块控件和可移动场景(如文件抽屉、窗帘和百叶窗),请选择受限移动。

对于受限移动,请在"上"、"下"、"左"和"右"框中输入值(以像素为单位)。

值相对于 AP 元素的起始位置。要将移动限制在矩形区域内,请在所有四个框中输入正值。若要只允许垂直移动,\n请为"上"和"下"输入正值,为"左"和"右"输入 0。\n若要只允许水平移动,请为"左"和"右"输入正值,为"上"和"下"输入 0。

在"左"和"上"框中为放置目标输入值(以像素为单位)。

放置目标是您希望访问者将 AP 元素拖动到的位置。当 AP 元素的左坐标和上坐标与您在"左"和"上"框中输入的值匹配时,系统会认为该 AP 元素已到达放置目标。值相对于浏览器窗口的左上角。单击"获取当前位置"可自动使用 AP 元素的当前位置填充文本框。

在"捕捉范围"框中输入值(以像素为单位),以确定访问者必须多接近放置目标,AP 元素才会捕捉到目标。

较大的值可让访问者更容易找到放置目标。

对于简单的拼图和场景操纵器,您可以在此停止。若要为 AP 元素定义拖动手柄、在拖动 AP 元素时跟踪其移动,并在放置 AP 元素时触发器操作,请单击"高级"选项卡。
若要指定访问者必须单击 AP 元素的特定区域才能拖动该 AP 元素,请从"拖动手柄"菜单中选择"元素内区域";然后输入拖动手柄的左坐标和上坐标以及宽度和高度。

当 AP 元素内的图像包含暗示拖动的元素(如标题栏或抽屉手柄)时,此选项很有用。如果您希望访客能够单击 AP 元素中的任何位置来拖动它,请不要设置此选项。

选择任何要使用的“拖动时”选项:
  • 如果希望 AP 元素在被拖动时移动到堆叠顺序的前面,请选择"将元素置于前面"。如果选择此选项,请使用弹出菜单选择是将 AP 元素保留在前面还是将其还原到堆叠顺序中的原始位置。

  • 在"调用 JavaScript"框中输入 JavaScript 代码或函数名称(例如,monitorAPelement()),以便在拖动 AP 元素时重复执行代码或函数。例如,您可以编写一个函数来监测 AP 元素的坐标,并在文本框中显示提示,如"您快要找到了"或"您距离放置目标还很远"。

在第二个 Call JavaScript 框中输入 JavaScript 代码或函数名(例如,evaluateAPelementPos()),\n以便在拖放 AP 元素时执行代码或函数。如果只有当 AP 元素已到达拖放目标时才执行 JavaScript,\n则选择"仅在捕捉时"。
单击“确定”,验证默认事件是否正确。

收集有关可拖动的 AP 元素的信息

当\n您将拖动 AP 元素行为附加到对象时,Dreamweaver 会将 MM_dragLayer() 函数\n插入到文档的 head 部分。该函数保留了 AP 元素的旧命名约定[即"图层"],以便在早期版本的 Dreamweaver 中创建的图层仍可编辑。除了将 AP 元素注册为可拖拽外,此函数还为每个可拖拽的 AP 元素定义三个属性:MM_LEFTRIGHTMM_UPDOWNMM_SNAPPED,您可以在自己的 JavaScript 函数中使用这些属性来确定 AP 元素的相对水平位置、AP 元素的相对垂直位置以及 AP 元素是否已到达放置目标。

注释

此处提供的信息仅适用于有经验的 JavaScript 程序员。

例如,以下函数在名为 curPosField 的表单字段中显示 MM_UPDOWN 属性的值(AP 元素的当前垂直位置)。(表单字段对于显示持续更新的信息很有用,因为它们是动态的——也就是说,您可以在页面完成加载后更改其内容。)

function getPos(layerId){

var layerRef = document.getElementById(layerId);

var curVertPos = layerRef.MM_UPDOWN;

document.tracking.curPosField.value = curVertPos;

}

您可以通过多种其他方式使用 MM_UPDOWNMM_LEFTRIGHT 的值,而不是在表单字段中显示这些值。例如,您可以编写一个函数,根据值与放置区域的接近程度在表单字段中显示消息,或者您可以调用另一个函数来根据值显示或隐藏 AP 元素。

当页面上有多个 AP 元素,且所有元素都必须到达其目标位置后访问者才能继续进行下一页或任务时,读取 MM_SNAPPED 属性尤其有用。例如,您可以编写一个函数来统计有多少个 AP 元素的 MM_SNAPPED 值为 true,并在每次拖放 AP 元素时调用该函数。当捕捉计数达到所需数量时,您可以将访客转到下一页面或显示祝贺消息。

应用“转到 URL”行为

Go To URL 行为在当前窗口或指定帧中打开新页面。此行为对于通过一次点击更改两个或多个帧的内容非常有用。

选择一个对象,并从"行为"面板的"添加行为"菜单中选择"转到 URL"。
从“打开在”列表中选择 URL 的目标。

在"打开位置"列表中会自动列出当前框架集中所有框架的名称以及主窗口。如果没有框架,主窗口是唯一选项。

注释

如果任何框架被命名为 top、blank、self 或 parent,此行为可能会产生意外结果。浏览器有时会将这些名称误认为是保留的目标名称。

单击"浏览"以选择要打开的文档,或在 URL 框中输入文档的路径和文件名称。
重复步骤 2 和 3 以在其他框架中打开更多文档。
单击“确定”,验证默认事件是否正确。

应用跳转菜单行为

当您使用"插入">"表单">"跳转菜单"创建跳转菜单时,Dreamweaver 会创建一个菜单对象并将跳转菜单(或跳转菜单转到)行为附加到该对象上。通常无需手动将跳转菜单行为附加到对象上。

您可以通过以下两种方式之一编辑现有跳转菜单:

  • 您可以通过在"行为"面板中双击现有跳转菜单行为来编辑和重新排列菜单项、更改要跳转到的文件,以及更改打开这些文件的窗口。

  • 您可以像编辑任何菜单中的项目一样编辑菜单中的项目,方法是选择菜单并使用"属性"检查器中的"列表值"按钮。

如果您的文档中还没有跳转菜单对象,请创建一个。
选择对象,然后从"行为"面板的"添加行为"\n菜单中选择"跳转菜单"。
在"跳转菜单"对话框中进行所需的更改,\n然后单击"确定"。

应用“跳转菜单转到”行为

"跳转菜单 Go"行为与"跳转菜单"行为密切\n相关;"跳转菜单 Go"让您可以将\nGo 按钮与跳转菜单关联。(在使用此行为之前,\n文档中必须已存在跳转菜单。)单击 Go 按钮会打开跳转菜单中选定的链接。跳转菜单通常不需要 Go 按钮;从跳转菜单选择项目通常会自动加载相应的 URL,无需进一步的用户操作。但是如果访客选择跳转菜单中已选的同一项目,则跳转不会发生。通常这不重要,但\n如果跳转菜单显示在帧中,并且跳转菜单项目链接\n到其他帧中的页面,Go 按钮通常很有用,可以让\n访问者重新选择已在跳转\n菜单中选择的项目。

注释

当您将 Go 按钮与跳转菜单一起使用时,Go\n按钮将成为让用户"跳转"到与菜单中选择项目\n关联的 URL 的唯一机制。在跳转菜单中选择菜单项目\n不再自动将用户重定向到\n其他页面或帧。

选择要用作 Go 按钮的对象(通常\n是按钮图像),然后从"行为"面板的"添加行为"菜单\n中选择"跳转菜单 Go"。
在"选择跳转菜单"菜单中,为 Go\n按钮选择要激活的菜单,然后单击"确定"。

应用打开浏览器窗口行为

使用\n"打开浏览器窗口"行为在新窗口中打开页面。\n您可以指定新窗口的属性,包括其大小、特性(是否可调整大小、是否有菜单栏等)以及名称。例如,您可以使用此行为在访问者单击缩略图\n图像时在单独窗口中打开较大图像;使用此行为,您可以使新窗口恰好为\n图像大小。

如果您没有为窗口指定属性,\n它将以打开它的窗口的大小和属性打开。为窗口指定任何属性会自动关闭所有其他未明确启用的属性。例如,如果您没有为窗口设置属性,它可能以\n1024 x 768 像素打开,并具有导航栏(展开"后退"、\n"前进"、"主页"和"重新加载"按钮)、位置工具栏(显示\nURL)、状态栏(在底部显示状态消息)和菜单\n栏(显示"文件"、"编辑"、"视图"和其他菜单)。如果您明确将宽度设置为 640、高度设置为 480 并且不设置其他属性,窗口将以 640 x 480 像素打开,没有工具栏。

选择对象,然后从"行为"面板的"添加行为"菜单\n中选择"打开浏览器窗口"。
单击"浏览"选择文件,或输入您要\n显示的 URL。
设置窗口宽度和高度(以像素为单位)\n的选项以及各种工具栏、滚动条、调整大小\n手柄等的合并选项。为窗口指定名称(不要使用空格或\n特殊字符),如果您希望它成为链接的目标或\n希望使用 JavaScript 控制它。
单击“确定”,验证默认事件是否正确。

应用弹出消息行为

"弹出消息"行为会显示\n包含您指定消息的 JavaScript 警报。因为 JavaScript\n警报只有一个按钮("确定"),所以请使用此行为向\n用户提供信息而不是提供选择。

您可以在文本中嵌入任何有效的 JavaScript 函数调用、属性、全局变量或其他表达式。要嵌入 JavaScript 表达式,请将其放在大括号 ({}) 内。要显示大括号,请在其前面加上反斜杠 (\{)。

示例:

此页面的 URL 是 {window.location},今天是 {new Date()}。

注释

浏览器控制警报的外观。如果您希望更好地控制外观,请考虑使用"打开浏览器窗口"行为。

选择对象,然后从"行为"面板的"添加行为"菜单中选择"弹出消息"。
在“消息”框中输入您的消息。
单击“确定”,验证默认事件是否正确。

应用预先载入图像行为

"预加载图像"行为通过缓存在页面首次显示时未显示的图像(例如,将通过行为或脚本交换的图像)来缩短显示时间。

注释

"交换图像"行为会在您选择"交换图像"对话框中的"预加载图像"选项时自动预加载所有亮显图像,因此在使用"交换图像"时您无需手动添加"预加载图像"。

选择对象,然后从"行为"面板的"添加行为"菜单中选择"预加载图像"。
单击"浏览"选择图像文件,或在 Image Source 文件框中输入图像的路径和文件名。
单击对话框顶部的加号 (+) 按钮将图像添加到"预加载图像"列表。
对于当前页面上要预加载的所有其余图像,重复步骤 2 和 3。
要从"预加载图像"列表中删除图像,请选择该图像并单击减号 (–) 按钮。
单击“确定”,验证默认事件是否正确。

应用“设置框架文本”行为

"设置帧文本"行为允许您动态设置帧的文本,用您指定的内容替换帧的内容和格式。内容可以包含任何有效的 HTML 代码。使用此行为可动态显示信息。

虽然"设置帧文本"行为会替换帧的格式,但您可以选择"保留背景颜色"来保留页面背景和文本颜色属性。

您可以在文本中嵌入任何有效的 JavaScript 函数调用、属性、全局变量或其他表达式。要嵌入 JavaScript 表达式, 请将其放在大括号内({})。要显示大括号, 请在其前面加上反斜杠(\{)。

示例:

此页面的 URL 是 {window.location},今天是 {new Date()}。

选择一个对象,然后从"行为"面板的"添加行为"菜单中选择"设置文本">\n"设置帧文本"。
在"设置帧文本"对话框中,从"帧"菜单中选择目标\n帧。
单击"获取当前 HTML"按钮,复制目标帧 正文 部分的当前\n内容。
在“新建 HTML”框中输入消息。
单击“确定”,验证默认事件是否正确。

应用"设置容器文本"\n行为

"设置容器文本"行为会将页面上现有容器(即任何可以包含文本或其他元素的元素)的内容和格式替换为您指定的内容。 该内容可以包括任何有效的 HTML 源代码。

您可以在文本中嵌入任何有效的 JavaScript 函数调用、属性、全局变量或其他表达式。要嵌入 JavaScript 表达式,请将其放在大括号内({})。若要显示大括号,请在其前面加上反斜杠 (\{)。

示例:

该页面的 URL 是 {window.location},今天是 {new Date()}。

选择对象并从"行为"面板的"添加行为"菜单中选择"设置文本">\n"设置容器文本"。
在"设置容器文本"对话框中,使用"容器"\n菜单来选择目标元素。
在“新建 HTML”框中输入新的文本或 HTML。
单击“确定”,验证默认事件是否正确。

应用"设置状态栏文本"\n行为

"设置状态栏文本"行为会在浏览器窗口左下角的状态栏中显示消息。例如,您可以使用此行为在状态栏中描述链接的目标,而不是显示与其关联的 URL。访问者经常忽略或遗漏状态栏中的消息(并且并非所有浏览器都完全支持设置状态栏文本);如果您的消息很重要,请考虑将其显示为弹出消息或 AP 元素的文本。

注释

如果您在 Dreamweaver 中使用"设置状态栏文本"行为,则不能保证浏览器中的状态栏文本会更改,因为某些浏览器在更改状态栏文本时需要特殊调整。例如,Firefox 需要您更改一个高级选项,以便 JavaScript 能够更改状态栏文本。有关详细信息,请参阅浏览器的文档。

您可以在文本中嵌入任何有效的 JavaScript 函数调用、属性、全局变量或其他表达式。要嵌入 JavaScript 表达式,请将其放在大括号 ({}) 内。要显示大括号,请在其前面加上反斜杠 (\{)。

示例:

此页面的 URL 是 {window.location},今天是 {new Date()}。

选择一个对象,然后从"行为"面板的"添加行为"菜单中选择"设置文本">\n"设置状态栏文本"。
在"设置状态栏文本"对话框中,在"消息"框中键入您的消息。

键入的消息应简明扼要。 如果消息在状态栏中放不下,浏览器会截断该消息。

单击“确定”,验证默认事件是否正确。

应用"设置文本字段文本"行为

"设置文本字段文本"行为会将表单文本字段的内容替换为您指定的内容。

您可以在文本中嵌入任何有效的 JavaScript 函数调用、属性、全局变量或其他表达式。要嵌入 JavaScript 表达式,请将其放在大括号 ({}) 内。若要显示大括号,请在它前面加一个反斜杠 (\{)。

示例:

此页面的 URL 是 {window.location},今天是 {new Date()}。

创建命名的文本域

选择“插入”>“表单”>“文本域”。

如果 Dreamweaver 提示您添加一个表单标签,请单击“是”。

在属性检查器中,为该文本域键入一个名称。 请确保该名称在页面上是唯一的(即便是在不同的表单中,也不要对同一页面上的多个元素使用相同的名称)。

应用设置文本域文字

选择一个文本字段,然后从“行为”面板的“添加行为”菜单中选择“设置文本”>“设置字段文本”。
从“文本字段”菜单中选择目标文本字段,并输入您的新文本。
单击“确定”,验证默认事件是否正确。

应用显示-隐藏元素行为

“显示-隐藏元素”行为可以显示、隐藏或恢复一个或多个页面元素的默认可见性。此行为在用户与页面交互时显示相关信息非常有用。例如,当用户将指针移动到植物图像上时,您可以显示一个页面元素,提供有关该植物生长期和产区、光照需求、生长体量等详细信息。此行为仅显示或隐藏相关元素 - 当元素被隐藏时,它并不会真正从页面流中移除。

选择一个对象,并从“行为”面板的“添加行为”菜单中选择“显示-隐藏元素”。

如果“显示-隐藏元素”选项不可用,可能是因为您选中了 AP 元素。由于 AP 元素在 4.0 版本的浏览器中均不接受事件,因此您必须选择其他对象 - 例如 <body> 标签或某个链接 (<a>) 标签。

从“元素”列表中,选择您想要显示或隐藏的元素,然后单击“显示”、“隐藏”或“恢复”(即恢复默认可见性)。
对于所有其余需要更改可见性的元素,请重复步骤 2。(您可以通过单个行为更改多个元素的可见性。)
单击“确定”,验证默认事件是否正确。

此行为自 Dreamweaver CS5 起已弃用。

应用交换图像行为

“交换图像”行为通过更改 <img> 标签的 src 属性来替换图像。使用此行为可以创建按钮翻转效果及其他图像效果(包括一次交换多个图像)。插入翻转图像会自动在您的页面中添加“交换图像”行为。

注释

由于此行为仅影响 src 属性,因此您应换入一张与原图尺寸(高度和宽度)相同的图像。否则,换入的图像会缩小或扩大以适应原图的尺寸。

此外还有一个“恢复交换图像”行为,它可以将最后一组交换的图像恢复为之前的源文件。每当您为对象附加“交换图像”行为时,此行为都会自动添加;如果您在附加“交换图像”时保持勾选“恢复”选项,则无需手动选择“恢复交换图像”行为。

选择“插入”>“图像”,或单击“插入”面板上的“图像”按钮来插入图像。
在“属性”检查器中,在最左侧的文本框内为该图像输入名称。

为图像命名并非必须;当您将行为附加到对象时,系统会自动为图像命名。但是,如果您预先为所有图像命名,则更容易在"交换图像"对话框中区分图像。

重复第 1 步和第 2 步插入其它图像。
选择一个对象(通常是您要交换的图像),然后从"行为"面板的"添加行为"菜单中选择"交换图像"。
从"图像"列表中,选择您要更改来源的图像。
单击"浏览"以选择新的图像文件,或在"设置来源为"框中输入新图像的路径和文件名称。
对您要更改的任何其他图像重复步骤 5 和 6。对您要同时更改的所有图像使用相同的"交换图像"操作;否则,相应的"交换图像还原"操作将无法全部还原它们。
选择"预载图像"选项,以在载入页面时缓存新图像。

这样可以防止图像出现时的下载延迟。

单击“确定”,验证默认事件是否正确。

应用检查表单行为

"验证表单"行为检查指定文本字段的内容,以确保用户输入了正确类型的数据。将此行为附加到带有 onBlur 事件的各个文本字段,以在用户填写表单时验证字段,或将其附加到带有 onSubmit 事件的表单,以在用户单击"提交"按钮时同时评估多个文本字段。将此行为附加到表单可防止提交包含无效数据的表单。

选择"插入">"表单",或单击"插入"面板中的"表单"按钮来插入表单。
选择"插入">"表单">"文本字段",或单击"插入"面板中的"文本字段"按钮来插入文本字段。

重复此步骤以插入其它文本域。

选择验证方法:
  • 要在用户填写表单时验证各个字段,请选择一个文本字段并选择"窗口">"行为"。

  • 要在用户提交表单时验证多个字段,请单击"文档"窗口左下角标记选择器中的 <form> 标记,然后选择"窗口">"行为"。

从“添加行为”菜单中选择“检查表单”。
执行下列操作之一:
  • 如果您正在验证各个字段,请从"字段"列表中选择您在"文档"窗口中选择的同一字段。

  • 如果您正在验证多个字段,请从"字段"列表中选择一个文本字段。

如果字段必须包含某些数据,请选择"必需"选项。
选择下列“接受”选项之一:

使用任何数据

检查必需字段是否包含数据;数据可以是任何类型。

使用电子邮件地址

检查域中包含一个 @ 符号。

使用数字

检查域中只包含数字。

使用数字从

检查字段是否包含特定范围内的数字。

如果您选择验证多个字段,请对您要验证的任何其他字段重复步骤 6 和 7。
单击“确定”。

如果您在用户提交表单时验证多个字段,onSubmit 事件将自动出现在"事件"菜单中。

如果您正在验证各个字段,请检查默认事件是否为 onBluronChange。如果不是,请选择其中一个事件。

当用户离开字段时,这两个事件都会触发"验证表单"行为。区别在于onBlur无论用户是否在字段中输入都会触发,而onChange仅在用户更改了字段内容时才会触发。如果字段是必填项,则首选 onBlur 事件。