今天给大家介绍的是一款名叫 htcap 的开源 Web 漏洞扫描工具,它通过拦截 AJAX 调用和页面 DOM 结构的变化并采用递归的形式来爬取单页面应用(SPA)。...htcap所采用的爬虫算法能够采用递归的方式爬取基于AJAX的页面,htcap可以捕获AJAX调用,然后映射出DOM结构的变化,并对新增的对象进行递归扫描。...当htcap加载了一个测试页面之后,htcap会尝试通过触发所有的事件和填充输入值来触发AJAX调用请求,当htcap检测到了AJAX调用之后,htcap会等待请求和相关调用完成。...如果之后页面的DOM结构发生了变化,htcap便会用相同算法对新增元素再次进行计算和爬取,直到触发了所有的AJAX调用为止。 爬虫模块 Htcap支持三种爬取模式:被动型、主动型和攻击型。...在主动模式下,htcap会触发所有发现的事件,相当于模拟用户与页面进行交互,但不填写任何表单数据。
PS:如果希望只在表单提交时验证,可以设置为空。或者设置参数 binded:false binded true 是否绑定即时验证 scroll true 屏幕自动滚动到第一个验证不通过的位置。...替代) addSuccessCssClassToField ” 验证通过时,给控件增加 class,当再次验证失败时,会去除。...addFailureCssClassToField ” 验证失败时,给控件增加 class,当再次验证通过时,会去除。...在表单验证结果为失败时的回调函数 PS:onSuccess 和 onFailure 请参考 [Demo] onValidationComplete false 表单提交验证完成时的回调函数 [Demo...默认使用 form 的 action 属性 ajaxFormValidationMethod ‘get’ 设置 Ajax 提交时,发送数据的方式 onAjaxFormComplete $.noop 表单提交
对 jquery.validationEngine.js 文件进行修改,修改如下: 1.将 312 行的 field.focus(); 注释掉,当有输入控件在 Table 内部时,验证会导致回到顶部的现象...PS:如果希望只在表单提交时验证,可以设置为空。...bindMethod “bind” 验证事件的绑定方式,可设置为:bind, live PS:设置 live 似乎绑定事件无效,但是表单提交时能验证,建议不修改。...inlineAjax false ajaxFormValidation false 使用 Ajax 验证表单 ajaxFormValidationURL false 设置 Ajax 验证的 URL,默认使用...$.noop 表单提交验证规则通过后,Ajax 验证之前的行为(Function)[Demo] onValidationComplete false 表单提交验证完成时的行为(Function) 可以得到两个参数
PS:如果希望只在表单提交时验证,可以设置为空。...替代) addSuccessCssClassToField ” 验证通过时,给控件增加 class,当再次验证失败时,会去除。...addFailureCssClassToField ” 验证失败时,给控件增加 class,当再次验证通过时,会去除。...false 在表单验证结果为失败时的回调函数 PS:onSuccess 和 onFailure 请参考 [Demo] onValidationComplete false 表单提交验证完成时的回调函数...data-validation-placeholder 占位符 当位置为必填的控件验证时,值不能为空,也不能为占位符。
事件 当global:true时。...如果任何对象的某个属性值是一个函数,而不是一个字符串,该函数被调用并返回值才被序列化。 ...当没有给定function参数时,触发当前表单“submit”事件,并且执行默认的提 交表单行为,除非调用了preventDefault(). ...当给定function参数时,在当前元素上它简单得为其在“submit”事件绑定一个处理函数。...longTap 当一个元素被按住超过750ms 触发。 swipe swipeLeft swipeRight swipeDown 当元素被划过时触发。
三、Ajax表单提交 我们将看到的第一个特性,是能够提交表单数据并仅在页面的该部分调用JSF生命周期而无需重新加载页面。 以下是声明注册表单的页面部分(简化以供讨论): ?...触发pushEvent时,您可以看到在MemberRegistration.register()方法中格式化的消息。...在push标签内,我们有一个ajax>标签。 此标记声明每当调用dataavailable回调时,都会呈现包含成员列表数据表的可折叠面板。...四、客户端验证 我们可以使用RichFaces使用Ajax支持的字段验证。 每当用户选中一个字段时,就会进行验证,并显示任何消息,其中标签与具有for属性的字段相关。...探索Ajax表单提交 已替换为其Ajax等效项。
如果请求是异步的(默认),那么该方法将在请求发送后立即返回load请求成功完成时触发error当 request 遭遇错误时触发el-upload 多数 prop 是借助上述两个原生形式实现的。...$refs['upload-inner'].upload(file.raw); });}只有 ready 的才可以调用 uploadthis.upload(rawFile)upload(rawFile...this.disabled : (this.elForm || {}).disabled;但,其不会触发 el.form.change 事件,即不会触发验证流程如何设置了 file-list prop,...,对于非自动上传,调用 submit() 时才触发,并非不触发。...所以,这里建议如下:【关于校验】放到 on-change 中实现,而不是 before-upload 中这样无需关心是否为自动上传执行问题(非自动掉用submit,才触发before-upload)before-upload
对 jquery.validationEngine.js 文件进行修改,修改如下: 1.将 312 行的 field.focus(); 注释掉,当有输入控件在 Table 内部时,验证会导致回到顶部的现象...PS:如果希望只在表单提交时验证,可以设置为空。...bindMethod “bind” 验证事件的绑定方式,可设置为:bind, live PS:设置 live 似乎绑定事件无效,但是表单提交时能验证,建议不修改。...inlineAjax false ajaxFormValidation false 使用 Ajax 验证表单 ajaxFormValidationURL false 设置 Ajax 验证的 URL,默认使用...$.noop 表单提交验证规则通过后,Ajax 验证之前的行为(Function)[Demo] onValidationComplete false 表单提交验证完成时的行为(Function) 可以得到两个参数
beforeSend 局部事件 当一个Ajax请求开始时触发。如果需要,你可以在这里设置XHR对象。...ajaxSend 全局事件 请求开始前触发的全局事件 success 局部事件 请求成功时触发。即服务器没有返回错误,返回的数据也没有错误。...ajaxSuccess 全局事件 全局的请求成功 error 局部事件 仅当发生错误时触发。你无法同时执行success和error两个回调函数。...ajaxError 全局事件 全局的发生错误时触发 complete 局部事件 不管你请求成功还是失败,即便是同步请求,你都能在请求完成时触发这个事件。...ajaxComplete 全局事件 全局的请求完成时触发 ajaxStop 全局事件 当没有Ajax正在进行中的时候,触发。
当这些元素的值发生变化后,就会触发change()事件。...4、submit()事件: 这个是表单提交事件,提交表单时触发。...区域按下去,就触发了mousedown事件,松开时就触发了mouseup事件。...比如一般的网站登录的时候要输验证码,当你输完验证码,就会立即提示验证码正确还是错误,而不需要点击“登录”按钮后再去判断,这就用到了Ajax。接下来就看看如何使用。...它的调用格式如下: $.ajax([settings]) 其中参数settings为发送ajax请求时的配置对象,在该对象中,url表示服务器请求的路径,data为请求时传递的数据,dataType
仅当readyState值为1时,你才可以调用send()方法;否则的话,XMLHttpRequest对象将引发一个异常。该请求被使用提供给open()方法的参数发送到服务器。...当readyState值为1时,你可以在调用open()方法后调用这个方法;否则,你将得到一个异常。...仅当readyState值是3或4(换句话说,在响应头部可用以后)时,才可以调用这个方法;否则,该方法返回一个空字符串。...AJAX支持包括表单校验在内的各种应用程序。有时,在填充表单的其它内容之前要求校验一个唯一的表单域。例如要求使用一个唯一的UserID来注册表单。...如果不是使用AJAX技术来校验这个UserID域,那么整个表单都必须被填充和提交。如果该UserID不是有效的,这个表单必须被重新提交。
当调用 validate() 方法时,它将运行以下几个具体的验证步骤: 检查从声明自 yii\base\Model::scenarios() 方法的场景中所挑选出的当前yii\base\Model::scenario...条件式验证 若要只在某些条件满足时,才验证相关特性,比如:是否验证某特性取决于另一特性的值, 你可以通过when 属性来定义相关条件。...也就是当他们的关联特性接收到空值时,相关验证会被直接略过。...(Client-Side Validation) 当终端用户通过 HTML 表单提供相关输入信息时,我们可能会需要用到基于 JavaScript 的客户端验证。...当用户修改输入框的值, 或者提交表单时,就会触发相应的客户端验证 JS 代码。
而且,仅当readyState值为3(正在接收中)或4(已加载)时,这个status属性才可用。当readyState的值小于3时试图存取status的值将引发一个异常。 ...statusText属性 这个statusText属性描述了HTTP状态代码文本;并且仅当readyState值为3或4才可用。...仅当readyState值为1时,你才可以调用send()方法;否则的话,XMLHttpRequest对象将引发一个异常。该请求被使用提供给open()方法的参数发送到服务器。...仅当readyState值是3或4(换句话说,在响应头部可用以后)时,才可以调用这个方法;否则,该方法返回一个空字符串。 ...如上面所解释的,仅当在响应的媒体类型是text/xml,application/xml或以+xml结尾时,这个responseXML才可用。这个responseText属性将以普通文本形式返回响应。
:input[type=”file”]的onChange触发,也可以由一个独立的按钮的onClick使整个表单提交,此时还可以用input[type=”hidden”]带一些其它的参数,比如Token来源验证等等...Ajax无刷新上传 Ajax无刷新上传的方式,本质上与表单上传无异,只是把表单里的内容提出来采用ajax提交,并且由前端决定请求结果回传后的展示结果,不用像直接表单上传那样刷新和跳转页面。...,当然你也可以使用某个按钮来触发表单提交。...当进行粘贴(右键paste/ctrl+v)操作时,触发剪贴板事件’paste’,从系统剪切板获取内容,而系统剪切板的数据在不同浏览器保存在不同的位置: IE内核:windows.clipboardData...上传与安全 上传文件时必须做好文件的安全性,除了前端必要的验证,如文件类型、后缀、大小等验证,重要的还是要在后台做安全策略。
函数 描述 jQuery.ajax() 执行异步 HTTP (Ajax) 请求。 .ajaxComplete() 当 Ajax 请求完成时注册要调用的处理程序。这是一个 Ajax 事件。....ajaxError() 当 Ajax 请求完成且出现错误时注册要调用的处理程序。这是一个 Ajax 事件。 .ajaxSend() 在 Ajax 请求发送之前显示一条消息。...jQuery.ajaxSetup() 设置将来的 Ajax 请求的默认值。 .ajaxStart() 当首个 Ajax 请求完成开始时注册要调用的处理程序。这是一个 Ajax 事件。....ajaxStop() 当所有 Ajax 请求完成时注册要调用的处理程序。这是一个 Ajax 事件。 .ajaxSuccess() 当 Ajax 请求成功完成时显示一条消息。...这个方法可以用在例如当只有编辑器focus()的时候才去加载编辑器需要的JS文件.下面看一些 示例代码: 加载并执行 test.js。
事件处理程序:当HTML中发生某些事件调用的方法。...(如alt,ctrl,esc,shift),请使用keydown()方法检测 表单事件:submit(提交表单时),change(元素值(适用于表单字段)发生改变时),focus(元素获得焦点),blur...当鼠标指针移动到元素上时,会触发第一个函数(mouseenter);当鼠标指针移出这个元素时,会触发第二个函数(mouseleave)。...如: var jq=$.noConflict(); jq(document).ready(function(){ //some code }) 当然,关于jQuery还有许多插件,比如验证表单...,验证密码等等。
GoogleSuggest 使用 AJAX 创造出动态性极强的 web 界面:当您在谷歌的搜索框输入关键字时,JavaScript 会把这些字符发送到服务器,然后服务器会返回一个搜索建议的列表。...xmlhttp.onreadystatechange=function() { //对于 responseText 属性,只有当 readyState 属性值变为4时,responseText 属性才可用...//如果输入框不为空,showHint() 函数执行以下任务: 创建 XMLHttpRequest 对象 当服务器响应就绪时执行函数 把请求发送到服务器上的文件 请注意我们向 URL 添加了一个参数...相比于复杂的$.ajax而言,GET请求功能则显得更加简单,请求成功时可调用回调函数。当然如果需要在出错时执行函数,那么还请使用$.ajax。...POST请求功能也相对比较简单,请求成功时可调用回调函数。如果需要在出错时执行函数,那么请使用 $.ajax请求。
ajaxStart()方法用于在Ajax请求发出前触发函数,ajaxStop()方法用于在Ajax请求完成后触发函数。...jQuery 常用插件 表单验证插件——validate 该插件自带包含必填、数字、URL在内容的验证规则,即时显示异常信息,此外,还允许自定义验证规则,插件调用方法如下: $(form).validate...({options}) 其中form参数表示表单元素名称,options参数表示调用方法时的配置对象,所有的验证规则和异常信息显示的位置都在该对象中进行设置 例如,当点击表单中的“提交”按钮时,调用validate...插件验证用户名输入是否符合规则,并将异常信息显示在页面中,如下图所示: 表单插件——form 通过表单form插件,调用ajaxForm()方法,实现ajax方式向服务器提交表单数据,并通过方法中的options...).droppable({options}) selector参数为接收拖曳元素,options为方法的配置对象,在对象中,drop函数表示当被接收的拖曳元素完全进入接收元素的容器时,触发该函数的调用。
一.apex:actionRegion apex:actionRegion为当一个ajax请求生成的时候,可以通过它来区分哪部分区域/组件可以应该被Force.com Service处理,只有在actionRegion...:actionRegion作用只在于提交表单时可以指定区域内容来提交。...二.apex:actionSupport actionSupport作用为当一个特定的事件被触发,比如单击,失去焦点,鼠标移入等操作被触发时,允许组件进行异步的刷新功能,常用场景为联动,失去焦点后校验在数据库中是否唯一等...中进行一些简单的处理,也可以直接被其他元素调用; 2.actionSupport仅允许在单一的事件上调用action的method,actionFunction可以被多个事件调用。 ...其实上面的vf代码是有问题的,当选择了下拉框,右侧的下拉框的值也不修改成yyy,原因是这样的: 当actionSupport执行时,会提交整个form表单,因为上面有一个required的字段,所以导致提交表单失败