Jquery 如何在基于验证的ActionLink之前发出用户确认消息

Jquery 如何在基于验证的ActionLink之前发出用户确认消息,jquery,html,asp.net-mvc,onclick,url.action,Jquery,Html,Asp.net Mvc,Onclick,Url.action,我有以下链接。单击后,我想检查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

我有以下链接。单击后,我想检查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\u company.HasValue是否存在的消息。我还想在确认消息中显示item.company1.company\u名称

<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>

函数Actionclick(url)
{
警报(“myclick”);
如果(确认('是否要激活该公司的主公司和所有其他子公司?'))
{
location.href(url);
}
};
使用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?');
    });
});

您编辑的示例中的代码由于双重使用双引号而失败

关于仅在
item.primary\u company.HasValue
为true时显示带有公司名称的确认,可以在服务器端或客户端执行

服务器端,根据状态更改链接的工作方式:

<% 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>

函数Actionclick(url,公司名称){
如果(确认('confirm.CompanyName='+CompanyName)){
location.href=url;
}
};
客户端,向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>

功能操作单击(url、公司名称、显示确认){
如果(显示确认){
如果(确认('confirm.CompanyName='+CompanyName)){
location.href=url;
}
}
否则{
location.href=url;
}
};

对不起,我犯了一个错误,没有逃脱
公司的
撇号。请看我的更新。这是我自己加的。但仍然没有收到确认信息。在返回确认之前,我添加了一个“警报”,但也没有触发。我的一些公司名称中有撇号。我碰巧测试了其中两个导致问题的示例。非常感谢您提供这两个示例。那真的很有帮助!
function companyClick(companyName) {
    return confirm(
        'Do you want to activate '
        + companyName + 
        ' company\'s primary company and all other subsidiaries?');
}
<% 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>
<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>