我有一些略有不同的页面,但都有相同的"操作按钮",每个页面执行相同的任务.我没有复制代码,而是创建了一个用户控件,其中包含执行操作的按钮 - 但是我似乎无法执行一项操作.
每个页面都有一个文本框(不在用户控件内,因为它位于页面的不同位置).当我单击"保存注释"按钮(在用户控件中)时,我似乎无法访问文本框中的文本.
我试过用这样的东西:
TextBox txtComments = (TextBox)this.Parent.FindControl("txtComments");
SaveChanges(txtComments.Text);
Run Code Online (Sandbox Code Playgroud)
...但是txtComments返回null.
所以,我想知道这是否可行,或者是否有更好的方法来做我想做的事情?
编辑:文本框位于原始页面的占位符中...
编辑2:发布缩小的解决方案 - 仍然无法弄清楚这个.
编辑3:删除解决方案以节省空间 - 解决了问题.
我的jquery脚本有问题...应该是一个简单的任务,但有一些我无法弄清楚的奇怪行为.
当我点击链接时,我希望我的内容消失,然后重新出现新内容.所有内容都存储在标签中.
这是我正在使用的:
$("#events_link").click(function() {
$("#content").children(".content").fadeOut(fadetime, function() {
$("#events").fadeIn(fadetime);
});
return false
});
Run Code Online (Sandbox Code Playgroud)
但是,fadeIn不会等到内容淡出.
我的完整页面在这里(所有代码/脚本在一个页面上):
http://dl.dropbox.com/u/4217965/HorrorInTheHammer/index.html
有什么想法吗?
我有一个用户控件与一些自定义客户端验证.当我在页面上拥有用户控件时,它没有问题.但如果该页面有回发事件(从下拉列表中选择某个选项,并显示更多字段),我的验证似乎不再起作用.我的验证如下:
protected void Page_Load(object sender, EventArgs e)
{
Type cstype = this.GetType();
if (!Page.ClientScript.IsStartupScriptRegistered(cstype, "ValidatorType"))
{
String DateValidator;
DateValidator = "<script type=\"text/javascript\">\n";
DateValidator += "function ValidateDate(source, args) {\n";
DateValidator += " var ddDay = document.getElementById(source.day);\n";
DateValidator += " var day = ddDay.selectedIndex;";
DateValidator += " var ddMonth = document.getElementById(source.month);\n";
DateValidator += " var month = ddMonth.selectedIndex;\n";
DateValidator += " var ddYear = document.getElementById(source.year);\n";
DateValidator += " var year = ddYear.selectedIndex;\n";
DateValidator += " if (day == 0 || month == …Run Code Online (Sandbox Code Playgroud)