Вот мой простой XPage:OnClick событие для содержания Div
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:div
style="border-color:rgb(255,0,0);border-style:solid;border-width:thin"
id="div1" styleClass="divStyleClass1">
<xp:label value="Label" id="label1" styleClass="labelStyleClass">
</xp:label>
<xp:eventHandler event="onclick" submit="false">
<xp:this.script><![CDATA[alert(thisEvent.target.className);
if(thisEvent.target.className=="divStyleClass1"){
thisEvent.target.className="divStyleClass2";
} else {
thisEvent.target.className="divStyleClass1";
}]]></xp:this.script>
</xp:eventHandler>
</xp:div>
</xp:view>
Я хочу изменить DIV styleClass на OnClick событие. И он отлично работает, пока я не нажму на любой элемент внутри DIV, например. на этикетке. Очевидно, thisEvent.target указывает на объект метки, и он терпит неудачу.
Итак, как исправить это, поэтому он изменяет класс стиля DIV независимо от того, где и что вы нажимаете внутри?
Я не осведомлен о xpage. Однако из html и, например, jQuery Я знаю, что вы можете использовать функцию типа 'ближайшая'. Возможно, это поможет вам. (http://api.jquery.com/closest/) – AMartinNo1
DIV id неизвестен. Таким образом, мне нужно использовать thisEvent.xxxxx –