GVKun编程网logo

在onChange事件中调用2个函数(onchange多个事件)

12

如果您对在onChange事件中调用2个函数和onchange多个事件感兴趣,那么这篇文章一定是您不可错过的。我们将详细讲解在onChange事件中调用2个函数的各种细节,并对onchange多个事件

如果您对在onChange事件中调用2个函数onchange多个事件感兴趣,那么这篇文章一定是您不可错过的。我们将详细讲解在onChange事件中调用2个函数的各种细节,并对onchange多个事件进行深入的分析,此外还有关于ajax – 调用remoteForm只用onChange事件更新一个div、angular – 输入文件onchange事件未触发、file-up-loader上传图片上传第一次可以出发onchange事件 如果同一个图片再上传一次就触发不了change事件、HTML5范围的onChange事件的实用技巧。

本文目录一览:

在onChange事件中调用2个函数(onchange多个事件)

在onChange事件中调用2个函数(onchange多个事件)

我的组件有些卡住,我需要从props调用onChange,所以

<input type="text" value={this.state.text} onChange={this.props.onChange} />

而且还调用了称为handleChange()state.text 的组件中的另一个函数,我尝试过

 <input type="text" value={this.state.text} onChange={this.props.onChange; this.handleChange} />

但这似乎不起作用。

答案1

小编典典

您可以通过将两个函数放在双引号中来实现:

<input type="text" value={this.state.text} onChange="this.props.onChange(); this.handleChange();" />

这应该工作。但是最好在第一个函数中调用第二个函数:

function testFunction() {    onChange();    handleChange();}

ajax – 调用remoteForm只用onChange事件更新一个div

ajax – 调用remoteForm只用onChange事件更新一个div

我想动态地在textField中输入数据时更新div内容.
我尝试过以下方法:

<g:formRemote name="changeText" on404="alert('not found!')" update="resultDiv"
    url="[ controller: 'results',action:'results' ]">
        <g:textField onChange="submit();" name="text"/>
</g:formRemote>

一切都工作,除了新的页面是渲染和div没有更新…

def results = {
   render "new content"
}

解决方法

以下GSP代码:

<g:formRemote name="changeText" on404="alert('not found!')" update="resultDiv"
          url="[ controller: 'results',action:'results' ]">

将使用onSubmit方法生成一个新的HTML表单,如下所示:

<form id="form_id" action="/action" method="post" onsubmit="jQuery.ajax({type:'POST',data:jQuery(this).serialize(),url:'/action',success:function(data,textStatus){jQuery('#resultDiv').html(data);},error:function(XMLHttpRequest,textStatus,errorThrown){}});return false">

因此,将触发AJAX调用的Javascript代码位于onSubmit()方法上.

这里的问题是你使用Javascript调用submit()动作,这不会触发onSubmit()方法.

解决方案是直接在onChange事件中调用onSubmit()方法:

<g:textField onChange="this.form_id.onsubmit();" name="text"/>

angular – 输入文件onchange事件未触发

angular – 输入文件onchange事件未触发

每次选择文件时,我都会尝试触发onchange事件.如果我选择的文件不同,它会触发,但是,即使选择了两次相同的文件,我也想要触发.

HTML

<input name="file" type="file"  (change)="onChange($event)"/>

零件

onChange(event: any) {

        var files = event.srcElement.files;
        this.files = files;

        event= null;
}
实现此跨浏览器并且无需更改多少代码的最可靠方法是在单击时将输入值设置为null.
onclick="this.value = null"

所以你的输入看起来像这样

<input name="file" type="file" onclick="this.value = null" (change)="onChange($event)"/>

这是一个工作示例:plnkr

file-up-loader上传图片上传第一次可以出发onchange事件 如果同一个图片再上传一次就触发不了change事件

file-up-loader上传图片上传第一次可以出发onchange事件 如果同一个图片再上传一次就触发不了change事件

file-up-loader上传图片上传第一次可以触发onchange事件 如果同一个图片再上传一次就触发不了change事件

原因

	因为上一次file里选择的文件路径值与本次选择的文件路径值是一样的,值没有改变所以导致file不会触发onchange事件。

解决方法上传成功之后把input file重新设置

$("#five")[0].value=null;

HTML5范围的onChange事件

HTML5范围的onChange事件

目前我范围输入上的onChange事件在每个步骤触发。

有没有办法阻止此事件启动,直到用户放开滑块?

我正在使用范围创建搜索查询。我想要能够在每次表单更改时运行搜索,但在滑块运动的每个步骤发出搜索请求太多了。

谢谢你的帮助

下面是代码:

HTML:

<div id="page">
    <p>Currently viewing page <span>1</span>.</p>
    <inputtype="range" min="1" max="100" step="1" value="1" name="page" />
</div>

JavaScript:

$(".slider").change(function() {
    $("#query").text($("form").serialize());
});

这有帮助吗?

解决方法

用于最终所选值:
$(".slider").on("change",function(){console.log(this.value)});

使用获取增量值作为滑动:

$(".slider").on("input",function(){console.log(this.value)});

关于在onChange事件中调用2个函数onchange多个事件的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于ajax – 调用remoteForm只用onChange事件更新一个div、angular – 输入文件onchange事件未触发、file-up-loader上传图片上传第一次可以出发onchange事件 如果同一个图片再上传一次就触发不了change事件、HTML5范围的onChange事件的相关信息,请在本站寻找。

本文标签: