我想使用由Strust2 jQuery插件内部使用的publish
/subscribe
框架。使用Struts 2 jQuery插件发布事件
用户可以从列表中选择一个帐号或在文本框中键入它。
我想在文本框或选择选项更改时发布事件。所以,用户只能键入文本框或从选择框中选择一些东西:
<s:textfield name="account" onblur="$.publish('accountChanged',this,event)"/>
<s:select name="accountList" list="destinationAccounts"
onblur="$.publish('accountChanged',this,event)"/>
以下是JS:
$.subscribe('accountChanged', function(event, data) {
alert("New data is: " + data.value);
if (event.target.id=='account') {
//Do something
}
}
这里有问题:
- 数据。值仅适用于文本框,对于选择框
data.value
未定义。 - 我想知道哪个目标收到事件。
event.target.id
不工作!我认为事件对象不是一个jQuery事件对象?
我回顾了示例展示应用程序,但找不到任何。
我是否正确调用$.publish
方法?有更好的方法吗?
要求很简单。 页面中有一个隐藏的文本字段。该隐藏文本的值应设置如下: 如果用户在文本字段中键入一个值,则应该使用文本字段值设置隐藏字段值。 如果用户从选择输入中选择帐户,则应从所选选项中设置隐藏字段值。 我认为当文本框发生变化时以及用户从选择列表中选择一些内容时,我必须发布'accountChanged'主题。这是我发布相同的主题名称的方式。然后在订阅方法中,我想通过读取数据来设置隐藏值。值 –
好吧,你知道该怎么做吗? –
是的!你的回答引导了我很多。我会为其他人提供答案 –