我正在使用jQuery UI更新我的一个网站,使用jQuery UI来使用母版页。与asp.net主页的jQuery UI页面
这里是我的原代码,其中工程瓦特/母版页的摘要,但不是:
$('#myCancelEventDialog').dialog({
autoOpen: false,
width: 500,
buttons: {
"Cancel This Event": function() { __doPostBack('btnCancel', ''); },
"Do Nothing": function() { $(this).dialog("close"); }
}
});
不过,我看是怎么回事,与母版页换款的名字函数,下面的代码修复了这个例子。
$('#myCancelEventDialog').dialog({
autoOpen: false,
width: 500,
buttons: {
"Cancel This Event": function() { __doPostBack('ctl00$ContentPlaceHolder$btnCancel', ''); },
"Do Nothing": function() { $(this).dialog("close"); }
}
});
通知我已经把“ctl00 $ $的ContentPlaceHolder”前缀的btnCancel,以便相应的回调函数是固定的。
从其他线程我已经阅读了stackoverflow,有一个更好的解决方案比修补代码一次一个地方,因为我已经做了上面,但还没有完全得到它的权利呢。
什么是通用的方式来获得jQuery UI回发函数来找到正确的回调函数,当你使用母版页像我上面的例子?
不错,我使用4.0,并没有意识到该选项:我需要将4个Clientidmode值中的哪一个设置为?而且据你所知,这个选项有什么缺点吗? – 2010-07-01 18:32:11
只要你没有在各种用户控制/中继器等相同的ID,希望你不应该没有下降!没有其他Web框架试图通过确保所有元素ID都是唯一的来帮助开发人员,他们信任开发人员!至于哪种模式。我会选择静态,但仍取决于您现有的页面/控件 – redsquare 2010-07-01 18:36:27
谢谢,我会给你ClientIDMode提示的答案...很好找。这是一个链接给任何想阅读它的人:https://www.west-wind.com/weblog/posts/54760.aspx – 2010-07-01 18:47:14