c#项目遇到的问题及解决(2)

本文介绍了一种使用JavaScript和jQuery实现按钮点击后进入三秒倒计时并禁用状态的方法,适用于a标签和submit按钮。同时分享了解决VSS项目中Excel文件读写权限问题的技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目中需要实现button点击之后倒计时三秒重新为可点击状态,经过摸索和学习前人经验,实现如下:

js代码:

function disableLink(link) {
    if (link.attr('inactive') == 'true')
        return false;

    link.css('cursor', 'default')
    .css('color', 'silver').attr('inactive', 'true')
    .attr('backtext', link.text()).attr('remains', 3);

    setTimeout(function() { updateLinkDelay(link); }, 1000);

    return true;
}

function updateLinkDelay(link) {
    var r = link.attr('remains');
    if (r > 0) {
        link.text(link.attr('backtext') + ' [' + r + ']');

        link.attr('remains', r - 1);
        setTimeout(function() { updateLinkDelay(link); }, 1000);
    }
    else {
        enableLink(link);
    }
}

function enableLink(link) {
    //console.log("restore link");

    link.text(link.attr('backtext'));

    link[0].style.color = '';
    link.css('cursor', 'pointer').removeAttr('inactive');
}
/*End */
//submit
function disableLink1(link) {
    if (link.attr('inactive') == 'true')
        return false;
    link.css('cursor', 'default')
    .css('color', 'silver').attr('inactive', 'true')
	.attr('text1', link.val()).attr('remains', 3);
    setTimeout(function() { updateLinkDelay1(link); }, 1000);

    return true;
}
function updateLinkDelay1( link) {
 var r = link.attr('remains');
    if ( r> 0) {
         link.val( link.attr('text1') + ' [' + r + ']');
        link.attr('remains', r - 1);
        setTimeout(function() { updateLinkDelay1(link); }, 1000);
    }
    else {
        enableLink1( link);
    }
}

function enableLink1( link) {
    //console.log("restore link");

     link.val(link.attr('text1'));
    link[0].style.color = '';
    link.css('cursor', 'pointer').removeAttr('inactive');
}
$(function() {
    $("a").click(function() {
        return disableLink($(this));
    });
    $(":submit").click(function() {
        return disableLink1($(this));
    });
});

 这里是针对a标签和input type=“submit”标签,两种的实现方法不同,且aspx文件中需引进jQuery.js文件。

问题:

  项目使用vss后,在将网页数据导入到Excel时可能会有目录或目录下的文件是read-only.解决方法是:

文件夹去除read-only:

 System.IO.DirectoryInfo DirInfo = new DirectoryInfo(excelFilePath); //将exportdata的read-only去掉
            DirInfo.Attributes = FileAttributes.Normal & FileAttributes.Directory;

文件去除read-only:

if (File.GetAttributes(templateExcelFilePath) == FileAttributes.ReadOnly)
            {
                File.SetAttributes(templateExcelFilePath, FileAttributes.Normal);
            } 

 必须将代码加到必要的位置

转载于:https://www.cnblogs.com/gary156/p/5013225.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值