Javascript中的链接按钮与内部方法
本文关键字:内部 方法 按钮 链接 Javascript | 更新日期: 2023-09-27 18:13:04
我有OnClientClick询问用户是否确定在用户选择的语言中这样做。但它不起作用,因为太多的引号混合。有人知道怎么做吗?
<asp:LinkButton ID="btnDelete" runat="server" ToolTip="Sil" CssClass="red" OnClick="btnDelete_OnClick" CommandArgument='<%# Item.UId %>'
OnClientClick='<%= "return confirm('" + MULTILANGG("Areyousureyouwanttodeletethis") +"')"%>'><i class="icon-trash bigger-130"></i></asp:LinkButton>
你可以在外面定义你的字符串,在一个常规的脚本标签-然后你不需要任何服务器代码在你的标签:
<script type="text/javascript">
var _areYouSure = "<%= MULTILANGG("Areyousureyouwanttodeletethis") %>";
</script>
<asp:LinkButton ... OnClientClick="return confirm(_areYouSure);" ...></asp:LinkButton>
编辑
这里有一个你可能更喜欢的模式——因为你已经有了某种翻译文件,你可以通过在页面顶部存储一个包含所有翻译的javascript对象来组织事情。它们会被组织起来,放在一个地方,然后你可以在javascript的任何地方使用它们。
var _resources = <%= JsonConvert.SerializeObject(new {
areYouSureDelete = MULTILANGG("Areyousureyouwanttodeletethis"),
welcome = MULTILANGG("Welcome"),
submit = MULTILANGG("Submit"),
cancel = MULTILANGG("Cancel")
}) %>;
<asp:LinkButton ... OnClientClick="return confirm(_resources.areYouSureDelete);" ...></asp:LinkButton>
请注意,字符串是在c#中构建的,因此所有的转义都得到了处理,您将最终得到一个有效的javascript对象。
最简单的方法是将其拆分为它自己的js函数
function confirmDelete() {返回确认(' & lt; % = MULTILANGG (Areyousureyouwanttodeletethis) %>")}
然后OnClientClick="confirmDelete()"
你很接近了!试试这个:
<asp:LinkButton ID="btnDelete" runat="server" ToolTip="Sil" CssClass="red"
OnClick="btnDelete_OnClick" CommandArgument='<%# Item.UId %>'
OnClientClick="return confirm('<%= MULTILANGG("Areyousureyouwanttodeletethis") %>')">
<i class="icon-trash bigger-130"></i></asp:LinkButton>