2012-01-06 109 views
0

我有以下提交按鈕:改變HTML標籤的屬性

<form id="form1" runat="server"> 
<input type="submit" id="submit" value="Submit" runat="server"/> 
</form> 

怎樣更改例如按鈕被點擊後使用內聯服務器標籤的按鈕本身的背景顏色?

我已經嘗試使用內聯服務器標記< %%>提交按鈕聲明中的屬性style =「」,但我只是得到一個解析器錯誤消息,說「服務器標記不能包含<%...%>」結構體。」

預計代碼,可以用來驗證按鈕點擊:

<% 
    if (Request["submit"] != null) 
    { 
    // CODE HERE 
    } 
%> 
+0

爲什麼你不能使用jQuery改變背景色左右,其中有在服務器端沒有什麼意義? – dotNETbeginner 2012-01-06 11:21:43

+1

我的問題具有服務器端意義,而不是客戶端。 – Birdman 2012-01-06 11:23:48

回答

2
<form id="form1" runat="server"> 

    <% 
     if (Request["submit"] != null) 
     { %> 
     <input type="submit" id="submit" value="Submit" runat="server" style="background:#ffffff"/> 
    <% } 
     else{ %> 
    <input type="submit" id="submit" value="Submit" runat="server" style="background:#aaaaaa"/> 
    <%}%> 
</form> 

<form id="form1" runat="server"> 

     <% string color=""; 
      if (Request["submit"] != null) 
      { %> 
    color="background:#aaaaaa"; 
     <% }%> 
<input type="submit" id="submit" value="Submit" style="<%=color%>"/> 
    </form> 

如果使用第二個你提交按鈕不能有RUNAT =「服務器」屬性

+0

謝謝! 但有沒有什麼辦法來防止重複使用html提交代碼? – Birdman 2012-01-06 11:16:05

+0

我並不清楚你的問題,如果按鈕存在,用戶將能夠再次點擊它。你的意思是用戶不能點擊它並重新發送數據? – 2012-01-06 11:18:37

+0

我只是想改變提交按鈕被點擊後的背景顏色 - 沒有別的:-) – Birdman 2012-01-06 11:20:02

0

其不正確的方式將服務器端代碼與HTML標記混合在一起..
對於這樣的事情使用代碼隱藏..

嘗試以下..

if(Request["submit"]==null) 
     submit.Style.Add("background", "red"); 
else 
     submit.Style.Add("background", "white");