簡體   English   中英

將onclick事件添加到禁用字段

[英]Add onclick event to disabled field

我正在使用表單自定義生成器。 該格式在文件中指定,該文件將被解析,HTML元素將由JSF 2.x以編程方式生成,例如Apache MyFaces的HtmlInputText。

在我們的應用程序中,我們具有只讀用戶角色。 對於這些用戶,我們嘗試disabled所有輸入選項。 input字段上,我們設置html readonly屬性,對於其他元素(如select字段)沒有readonly屬性,我們在設置disabled屬性。

不幸的是,設置disabled=disabled也會使所有的javascript事件無效。 現在,我需要在禁用的選項字段on click以觸​​發javascript函數。 我怎樣才能做到這一點?

我不認為您可以做很多事情。

盡管有一個丑陋的解決方案。

放置position:absolute非禁用容器,位於禁用元素上方,即

<select disabled="disabled" >
  <option>one</option>
  <option>two</option>
  <option>three</option>
</select>
<div onclick="alert('s')" 
  style="width:56px;position:absolute; top:1.7%; left:1.6%;height:18px;" >
</div>

容器的頂部和左側的值取決於選擇的位置

看到這個小提琴

將禁用的元素包裝在另一個支持onclick屬性的元素中。 一個很好的例子是<h:panelGrid/>

   <h:panelGrid style="width=20px" onclick="foo.myBar()">  
      <h:someComponent disabled="true"/>
   </h:panelGrid>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM