我正在使用AJAX Control Toolkit控件“TextBoxWaterMarkExtender”。最初的问题是在Firefox中,使用javascript设置文本:
var getDateField = document.getElementById('soandso');
getDateField.value = 'someandsome';
将在提交/发布时清除,因为Extender控件认为没有人编辑过它,所以它正在清除“水印”。
并且它在Firefox中运行良好,但IE在此行中说“'null'为null或不是对象”:
var dateIdentified = $find("Beh" + sender).get_Text();
我遗失的任何明显的东西?
编辑:对不起伙计们,我认为$ find是一个jQuery函数。
编辑:更多代码:
function dateToday(sender)
{
var dateIdentified = $find("Beh" + sender).get_Text();
if (dateIdentified.length == 0)
{
var todaydate = new Date();
var smonth = todaydate.getMonth() + 1;
var sday = todaydate.getDate();
var syear = todaydate.getFullYear();
$find("Beh" + sender).set_Text(smonth.toString() + '/' + sday.toString() + '/' + syear.toString());
}
}
水印:
<toolkit:TextBoxWatermarkExtender BehaviorID="BehSTART_DATE" ID="WaterMarkSTART_DATE" runat="server"
TargetControlID="dcSTART_DATE"
WaterMarkText="mm/dd/yyyy" WaterMarkCssClass="searchHint" />
答案 0 :(得分:3)
对于有兴趣知道的人,我从使用body onLoad切换到我的javascript函数调用
Sys.Application.add_load(MyFunction);
现在IE,Firefox和Chrome都看到$ find的值。
答案 1 :(得分:1)
试试这个:
$("Beh" + sender).text();
当你已经查找了一个或多个元素并且想要在其中找到子元素时,使用find()。例如,你抓住一个表,然后想要用foo类找到表中的所有元素,如下所示:
var myTable = $('#myTable');
// more code
myTable.find('.foo');