C# B/S 怎么批量读取RFID卡

C# B/S 如何批量读取RFID卡
各位大神 , 在B/S下如何才能实现批量读取RFID卡
之前试过用 js 隔 1 秒钟单击一次读取 ,

    <script type="text/javascript">
        //模拟点击
        var mytime = 300;
        setTimeout(function () {
            var btn = document.getElementById("btnClose").disabled;
            var btnNext = document.getElementById("btnNext").disabled;
            if (btn&&!btnNext) mytime = 100000;
            else {
                mytime = 300;
                var btnId = "btnNext";
                if (btnNext)
                    btnId = "btnCyleWR";
                // IE
                if (document.all) {
                    document.getElementById(btnId).click();
                }
                // 其它浏览器
                else {
                    var e = document.createEvent("MouseEvents");
                    e.initEvent("click", true, true);
                    document.getElementById(btnId).dispatchEvent(e);
                }
            }
        }, mytime);
    </script>

 因为太耗资源了 , 就没用这方案;
现在尝试用监听 , 但是在后台读到卡后 , 不会返回数据到浏览器

后台代码:

public partial class Index : System.Web.UI.Page
    {
        //需要监控的当前状态属性
        private static int currentState = -1;
        //主动监控的状态保留属性
        private static int oldState = currentState;
        //主动监控的Timer
        System.Timers.Timer timer;
        RFID rfid = null;

        protected void btnNext_Click(object sender, EventArgs e)
        {
            if (m_hInterface != 0 && m_hprotparser != 0 && m_hreader != 0)
            {
                rfid = new RFID(m_hInterface, m_hprotparser, m_hreader);
                txtRead.Text += rfid.ReadData(ref UID);
                MyState = 1000;//改变该值,触发监听
            }
            else
            {
                lblDiver.Text = "找不到设备";
                btnNext.Enabled = false;
            }
        }
        protected void btnClose_Click(object sender, EventArgs e)
        {
            MyState = 2000;
        }



        private void timer_Elapsed(object sender, ElapsedEventArgs e)
        {