在下用datalist模板控件中加載了linkbutton控件,
得知其生成的客戶端代碼是"A"的html標記,其提交方式為
href="javascript:__doPostBack('.....','')"
現在我想把其提交方式改為
href="javascript:if (window.confirm('?确定?入???'))__doPostBack('.....','')",即增加確認動作
*******************************************************

解决方案 »

  1.   

    看過江大俠的貼子,受益非淺
    http://expert.csdn.net/Expert/topic/940/940895.xml?temp=.2809564
    但貼中沒有介紹獲取Attributes值的介紹,我在讀取Attribute["href"]的值為空
    不知應樣獲取,請指教!
    ********************************************************
      

  2.   

    測試代碼如下
    dlsSubProg.DataSource = 
    m_Prog.GetCurrentProgSubControl(m_User.CorpID, m_User.UserID, m_Prog.ProgID);
    dlsSubProg.DataBind();//扳定數據
    LinkButton btn;
    for (int i = 0; i < dlsSubProg.Items.Count; ++i)
    {
    if (dlsSubProg.DataKeys[i].ToString().Trim() == "01010103")
    {
    btn = (LinkButton)dlsSubProg.Items[i].FindControl("btnSubProgItem");
    btn.Attributes["href"] = "javascript:alert('hi')";
    //btn.Attributes.Clear() **清除不了原來的href **********
    break;
    }
    }
    上面的代碼在客戶產生了兩個 href標記他先執行"javascript:alert('hi')"
    在執行btn.Attributes.Clear()時也無法清除自身產生的屬性,才知其屬性是在我的代碼之後產生,那我應該在什麼時後去獲取原來的href呢?
    在線等後!
      

  3.   

    在Page_Load里加入这么一句就行:)
    LinkButton1.Attributes.Add("onclick","return window.confirm('确认?');");
      

  4.   

    to 江:
    你好,對不起,發了很久才把此貼發出。
    你說的Add()方法我用過,但是在客戶產生了兩個href,且後面的那一個不執行。要怎樣才行呢?
    我的想法是先獲取原來的href,然後改寫他。但不知怎樣才能獲取
      

  5.   

    具体问题具体分析,对于LinkButton就没必要非要修改href
    add一个onclick事件,同样也能得到相同的效果
      

  6.   

    對不起,沒試onclick,
    你的方法果然好用!
      

  7.   

    我已經試過,已經ok,但是我還想知道為什麼我不能獲取原來的Attributes["href"]呢?,不是我zuan牛角尖,隻是我想我可能以後會碰到類似的需要,
      

  8.   

    一般最好用onclick,原来我做Validator测试时,那是因为Validator控件给Button在客户端加上的就是onclick事件,相冲突只有另想办法。
    但LinkButton在客户端加上的是href,因而直接用onclick就行
    一般的Attribute都可以这样得到
    string str=LinkButton1.Attributes["style"].ToString();
    不过,因为LinkButton的href是服务器控件发送到客户端时才自动生成加上的,因而LinkButton1.Attributes["href"]会找不到而报错
      

  9.   

    to 江:
    錙言不了,能否告知你的E_mail?
      

  10.   

    我的E_mail:
    [email protected]