当Dojo自动完成符的值发生变化时,我试图调用javascript函数。
从“onChange”属性调用javascript函数无效(我的意思是该函数未被调用/执行)。
在我想要的javascript函数中:
调用struts2操作。
更改隐藏字段的值。
为了调用动作,我有另一种方式:
使用属性“valueNotifyTopic =”topicName“”发布主题,然后我可以通过听主题来调用操作。
但我不能通过这种方式改变隐藏字段的价值。所以我需要调用一个javascript函数
请告知
谢谢!
编辑:
这是jsp中的代码:
<s:url id="scriptURL" action="viewContactInfo" />
<sd:div href="%{scriptURL}" listenTopics="viewContactInfo" formId="contactInfo" showLoadingText="false" preload="false">
<s:form id="contactInfo">
<sd:autocompleter autoComplete="false" name="customer" list="customerList" valueNotifyTopics="viewContactInfo"/>
<sd:autocompleter autoComplete="false" name="contact" list="contactList" valueNotifyTopics="viewContactInfo"/>
<s:hidden id="chngd" value="initial"/>
</s:form>
</sd:div>
如果我将“valueNotifyTopics ='viewContactInfo'”更改为“onChange ='dojo.event.topic.publish('viewContactInfo');'”动作“viewContactInfo”将停止调用。而同样的事情(“onChange”)与其他元素一起工作(在我的项目的其他地方)。
答案 0 :(得分:0)
我已经为这个问题启动了另一个线程。
我找到了解决方案并在此处发布了答案:
Cannot find a way to pass a hidden value to the action file
希望这会有所帮助!!