我有以下链接。 点击之后,我想检查item.primary_company字段,如果填充,给用户一个警告,并询问他们是否想继续。 我怎样才能做到这一点?
<a href="<%= Url.Action("Activate", new {id = item.company_id}) %>" class="fg=button fg-button-icon-solo ui-state-default ui-corner-all"><span class="ui-icon ui-icon-refresh"></span></a>
编辑
我已经改变了这一点,但点击时没有任何反应。 另外,我不知道如何引用该项目做的primary_company现场检查。 我只想消息显示,如果item.primary_company.HasValue。 我也想显示item.company1.company_name在确认消息。
<a href="#" onclick="return Actionclick("<%= Url.Action("Activate", new {id = item.company_id}) %>");" class="fg=button fg-button-icon-solo ui-state-default ui-corner-all"><span class="ui-icon ui-icon-refresh"></span></a>
<script type="text/javascript">
function Actionclick(url)
{
alert("myclick");
if ( confirm('Do you want to activate this company\'s primary company and all other subsidiaries?'))
{
location.href(url);
}
};
</script>
在已编辑的示例中的代码失败,因为的双重使用双引号的。
对于只显示与确认,如果公司名称item.primary_company.HasValue
是真实的,这是可以做到无论是服务器端或客户端。
服务器端,更改链接视状态如何工作的:
<% if (item.primary_company.HasValue) { %>
<a href="#" onclick="return Actionclick('<%= Url.Action("Activate", new {id = item.company_id}) %>', '<%= Html.Encode(item.company1.company_name) %>');"
class="fg=button fg-button-icon-solo ui-state-default ui-corner-all"><span class="ui-icon ui-icon-refresh"></span></a>
<% } else { %>
<a href="<%= Url.Action("Activate", new {id = item.company_id}) %>"
class="fg=button fg-button-icon-solo ui-state-default ui-corner-all"><span class="ui-icon ui-icon-refresh">
link</span></a>
<% } %>
<script type="text/javascript">
function Actionclick(url,companyName) {
if (confirm('Confirm. CompanyName = ' + companyName)) {
location.href = url;
}
};
</script>
客户端,发送一个参数的JavaScript,告诉它是否要确认:
<a href="#" onclick="return Actionclick('<%= Url.Action("Activate", new {id = item.company_id}) %>', '<%= Html.Encode(item.company1.company_name) %>', <%= item.primary_company.HasValue ? "true" : "false" %>));"
class="fg=button fg-button-icon-solo ui-state-default ui-corner-all"><span class="ui-icon ui-icon-refresh"></span></a>
<script type="text/javascript">
function Actionclick(url,companyName,showConfirmation) {
if (showConfirmation) {
if (confirm('Confirm. CompanyName = ' + companyName)) {
location.href = url;
}
}
else {
location.href = url;
}
};
</script>
<a onclick="return companyClick(\"<%= Html.Encode(item.company_name) %>\");" href="<%= Url.Action("Activate", new { id = item.company_id }) %>" class="fg=button fg-button-icon-solo ui-state-default ui-corner-all">
<span class="ui-icon ui-icon-refresh"></span>
</a>
并在javascript:
function companyClick(companyName) {
return confirm(
'Do you want to activate '
+ companyName +
' company's primary company and all other subsidiaries?');
}
而使用jQuery:
<a href="<%= Url.Action("Activate", new { id = item.company_id }) %>" title="<%= Html.Encode(item.company_name) %>" class="fg=button fg-button-icon-solo ui-state-default ui-corner-all">
<span class="ui-icon ui-icon-refresh"></span>
</a>
$(function() {
$('a').click(function() {
return confirm(
'Do you want to activate '
+ $(this).title +
' company's primary company and all other subsidiaries?');
});
});
更新:
忘了逃走company's
撇号:
function companyClick(companyName) {
return confirm(
'Do you want to activate '
+ companyName +
' company\'s primary company and all other subsidiaries?');
}
文章来源: How to give user confirmation message before ActionLink based on validation