首页 文章

aspx页面点击mailto href和其他按钮不会触发

提问于
浏览
0

我有一个aspx页面(运行.net 4 framwork not MVC ),它有一个使用href的mailto,还有一个 . 链接按钮可正常触发后面的代码 . 如果我点击带有mailto的href(它将使用正确的信息启动outlook),然后尝试单击链接按钮,则不会触发 . 呈现时看起来像这样 .

<input type="submit" name="ctl00$ContentPlaceHolder1$btnSave" value="Save Attendance" onclick="return checkDisableButton(this.id, 'PROCESSING');" id="ContentPlaceHolder1_btnSave" class="ButtonPrimary button" disabled="">

checkDisabledButton代码

function checkDisableButton(btn, parmText, icon) {
var mbtn = $('#' + btn);
mbtn.addClass("buttonPad buttonProcessing button");
mbtn.val(parmText);};

我在var mbtn行放了一个断点,在点击mailto链接后它没有点击它 . 如果我加载页面并且不点击mailto链接,它会触发 .

就这样,你拥有它.. href看起来像这样

<a id="ContentPlaceHolder1_hlMailto" href="mailto:a@a.com;%20b@b.com;%20?Subject=2846">Load email</a>

(我在那个href上编辑了一些信息,所以我可能在副本上搞砸了)

我检查了mailto被点击之前和之后的代码,它似乎没有改变 .

无论如何..想知道是否有人有任何想法...谢谢香农

1 回答

  • 0

    不是说它是完美的方式......但是想出了什么 . 我有一些更多的代码,我没想到包括在点击它之后禁用按钮,因此它不会运行多次 . 这是与mailto有问题的代码 . 那段代码看起来像这样

    function DisableButtons() {
    var inputs = document.getElementsByTagName("INPUT");
    for (var i in inputs) {
        if (inputs[i].type == "button" || inputs[i].type == "submit") {
            inputs[i].disabled = true;
        }
    }
    

    } window.onbeforeunload = DisableButtons;

    我注释掉了代码并将此代码添加到checkDisableButton函数中

    $(mbtn).one('click', function (event) {
                event.preventDefault();
                //do something 
                $(this).prop('disabled', true);
    
            })
    

    这使得按钮只能被点击一次 . 它似乎工作 . 谢谢香农

相关问题