我有一个中继器,内部项目模板中有一个按钮和一个锚点。
<asp:Repeater runat="server" ID="rptCategoryList" OnItemDataBound="rptCategoryList_ItemDataBound">
<ItemTemplate>
....
<div style="margin-left: 81.6%;">
<span runat="server" id="spnRegister" clientidmode="static" class="register pull-right">
<button class="btn btn-info btn-lg" style="float: ; margin-right: 40px; margin-top: -150px; background-color: #3697EA">
<a href="register.aspx" style="color: white;" target="_self">Register</a>
</button>
</span>
</div>
....
</ItemTemplate>
单击此按钮时,它将重新加载同一页面,而不是register.aspx。我使用了“查看页面源代码”,并且href设置正确。
我删除了锚点,并向按钮添加了一个类,并使用了jQuery:
<button class="btn btn-info btn-lg registerSilver" style="float: ; margin-right: 40px; margin-top: -150px; background-color: #3697EA">
Register
</button>
$(function () {
$('.registerSilver').click(function () {debugger
window.location = 'register.aspx';
});
});
仍然无法正常工作,请继续重新加载同一页面。
我什至尝试将runat =“ server”添加到超链接,并将其href设置在转发器的itemdatabound中,没有运气。
我在这里想念什么?
答案 0 :(得分:0)
data = {'file_paths': ['/file/path/one', '/file/path/two'], 'file_count': 2}
text_baseline = "this is the {}th file and the path is {}"
with open('path','w') as f:
for i in range(int(dict.get('file_count'))):
f.write(text_baseline.format(i,data['file_paths']))
标签的默认行为触发表单提交(即ASPX页面中的<button>
),这很可能导致回发到同一页面,而不是重定向到锚链接中指定的页面URL。尝试像下面的示例一样显式设置<form runat="server">
属性:
type="button"
或对jQuery中的<button type="button" class="btn btn-info btn-lg" style="float: ; margin-right: 40px; margin-top: -150px; background-color: #3697EA">
<a href="register.aspx" style="color: white;" target="_self">Register</a>
</button>
事件处理程序使用preventDefault()
函数,以防止该按钮的默认提交动作:
click
答案 1 :(得分:0)
如果您只想重定向,那么为什么不使用button呢,您可以通过按钮CSS类来锚定标签并使它看起来像按钮一样
<asp:Repeater runat="server" ID="rptCategoryList" OnItemDataBound="rptCategoryList_ItemDataBound">
<ItemTemplate>
....
<div style="margin-left: 81.6%;">
<span runat="server" id="spnRegister" clientidmode="static" class="register pull-right">
<a href="register.aspx" class="btn btn-info btn-lg" style="color: white; float: ; margin-right: 40px; margin-top: -150px; background-color: #3697EA" target="_self">Register</a>
</span>
</div>
....
</ItemTemplate>
这将起作用
答案 2 :(得分:0)
您还可以将html按钮替换为一个asp:
<asp:Button runat="server" CssClass="btn btn-info btn-lg registerSilver" PostBackUrl="register.aspx" Text="Register"/>
这样,您可以设置PostBackUrl属性。