我有生成输入文本字段的顶点标签。
<apex:page id="my_page">
<apex:inputText id="foo" id="c_txt"></apex:inputText>
</apex:page>
当有人单击此字段时,我想执行 javascript。
但是当我检查 HTML 源代码时,这个成为输入标签的顶点标签有(我认为)动态生成的部分。
<input type="text" size="50" value="Tue Nov 16 00:00:00 GMT 2010"
name="j_id0:j_id3:j_id4:c_txt" id="j_id0:j_id3:j_id4:c_txt">
如您所见, id 有垃圾部分:(
id="j_id0:j_id3:j_id4:c_txt"
在我的 Javascript 中,我正在尝试,getElementById('c_txt')
但这当然行不通。这个怎么处理???
更新
似乎我可以做到这一点,但不工作......
<apex:includeScript value="{!URLFOR($Resource.datepickerjs)}"></apex:includeScript>
<apex:inputText id="foo" id="c_txt" onclick="javascript:displayDatePicker()" />
日期选择器
var elem = getElementById('c_txt');
alert(elem);
警报显示为“null”,因此一定有问题。
即使这个警报返回 null ...
var targetDateField = document.getElementById('{!$Component.my_page:c_txt}');
alert(targetDateField);