2012-11-15 61 views
3

只要通过打开弹出窗口动态设置其值,就想将更改事件绑定到textarea(只读)。动态设置值后更改事件不会触发

我可以设置该值,但更改事件没有被触发。

我用下面的代码来改变事件绑定到textarea的:

$('textarea[name="Cordinator"]').bind("change", onChangeCordinator); 
function onChangeCordinator(){} 
+0

你能澄清“每当其值设为”一词。有很多可能性来检查这个,即blur()事件 – toxicate20

+0

它的值是使用按钮上的onclick事件设置的......它打开弹出窗口 – Sheetu

+0

仍然不确定你想要实现什么,请插入一个一些html代码来澄清情况(如果答案还不够) – toxicate20

回答

8

上textarea的设定值,你是如何设定值后触发它?默认情况下,更改事件仅在浏览器用户更改值时触发。

如果要设置的值编程需要使用.trigger('change')

所以在某处你的onclick处理程序,你需要:

$('textarea[name="Cordinator"]').trigger('change'); 
+0

对不起,它可能听起来不对......我应该何时触发该功能? – Sheetu

+0

无论何时何地您改变价值。 – jfrej

+0

实际上,我使用弹出窗口来获取值...我无法访问该代码(无法修改它)...无论如何我可以触发该功能...也许使用窗口焦点功能或者其他一些? – Sheetu

3

有一个在您的js

改变这个语法错误

$('textarea[name="Cordinator"]').bind("change", onChangeCordinator);}); 

$('textarea[name="Cordinator"]').bind("change", onChangeCordinator); 

UPDATE:

以及您需要手动这样

$('textarea[name="Cordinator"]').val('Set Your Value Here').trigger('change'); 

DEMO

+0

哦对不起...这是一个错误...即时消息只使用这条线 $('textarea [name =“Cordinator”]')。bind(“change”,onChangeCordinator) ; – Sheetu

+0

@AnkitSusheel我已经更新了我的答案再一次 – rahul

+0

其实我使用弹出窗口来获取值...我无法访问该代码(并且无法修改它)...无论如何我可以触发该功能...也许使用窗口焦点功能或其他? – Sheetu

相关问题