Ситуация:
У меня есть два автозаполнения додзё на jsp.Оба они запускают одно и то же действие при изменении их значения.Теперь я хочу, чтобы в файле действий я знал, какой автозаполнение было изменено.
Что я сделал:
Обычно в такой ситуации я бы назвал javascriptизменить значение скрытого поля, а затем получить доступ к значению этого скрытого поля в файле действия, чтобы узнать, что было изменено.Но я вызываю JavaScript с помощью атрибута «onChange», который (к сожалению) не работает для «автозаполнения».Мне пришлось использовать «valueNotifyTopics» для вызова действия.
Вот код:
<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>
Я надеялся использовать что-то вроде этого:
onchange="dojo.byId('chngd').value='some value'; dojo.event.topic.publish('viewContactInfo');"
вместо
valueNotifyTopics="viewContactInfo"
Пожалуйста, посоветуйте способ обойти ситуацию, о которой я говорил.
Спасибо !!
В случае, если я пропустил любую необходимую информацию, пожалуйста, оставьтекомментарии.