2009-01-22 13 views
5

मैं किसी सूची में चेक बॉक्स प्रदर्शित किया था और मुझे लगता है कि जो बॉक्स या नहीं चुना जाता है की जाँच करें और जहां मैं ड्रॉपडाउन सूची से विकल्प चुनें नियंत्रक कार्रवाई कॉल करना चाहते उपयोग करना चाहतेहो रही Mvc asp.net में चयनित चेक बॉक्स मूल्य

<div id="pnlSent" style="display: none"> 
      <%= Html.DropDownList("select","msgtype") %> 
      <% foreach (Usp_GetUserMessagesResult w in (List<Usp_GetUserMessagesResult>)ViewData["UListM"]) 
       { %> 
       <li> 
      <div class="question-info"> 

       <input id="Checkbox1" type="checkbox" onclick="function() { alert("df") ; } " /> 

       <div class="views count"><span></span></div> 
       <div class="question"> 
        <div class="meta">Subject: <%= w.Subject %></div> 
        <div class="meta">To: <%= w.Username %></div> 
        <h3 class="title"><%= Html.Encode(w.Mesg)%></h3> 
       </div> 
      </div> 
     </li> 
      <% } %> 

    </div> 

उत्तर

-1

आप div pnlsent पर सभी नियंत्रणों के माध्यम से लूप कर सकते हैं और यदि नियंत्रण प्रकार एक चेकबॉक्स है तो आप यह निर्धारित कर सकते हैं कि चेकबॉक्स चेक किया गया है या नहीं।

VB में नियंत्रण के माध्यम से पाशन का उदाहरण ....

For Each ctrl As Control In Page.Controls 
     If TypeOf ctrl Is TextBox Then 
      CType(ctrl, TextBox).BackColor = clr 
     Else 
      If ctrl.Controls.Count > 0 Then 
       SetTextBoxBackColor(ctrl, clr) 
      End If 
     End If 
    Next 
2

asp.net-MVC में आप जानकारी है कि आप इतनी के रूप में एक के रूप में नियंत्रक की ओर उपयोग करने में सक्षम होना चाहता हूँ ahve चाहिए , मैं तुम्हें अपने चेकबॉक्स के लिए एक आईडी जोड़ने के नहीं थे, मेरा गतिशील आबद्ध है और मैं HTML सहायक कि asp.net-MVC के साथ आता है का उपयोग कर रहा:

<% using(Html.BeginForm("Retrieve", "Home")) %>//Retrieve is the name of the action while Home is the name of the controller 
    <% { %> 
     <%foreach (var app in newApps)    { %> 
     <tr> 
      <td><%=Html.CheckBox(""+app.ApplicationId)%></td>  

     </tr> 
    <%} %> 
    <input type"submit"/> 
<% } %> 

तो नियंत्रक पर आप की तरह जानकारी का उपयोग कर सकता है यह:

public ActionResult Retrieve() 
    { 
    //since all variables are dynamically bound you must load your DB into strings in a for loop as so: 
    List<app>=newApps; 
    for(int i=0; i<app.Count;i++) 
    { 


    var checkbox=Request.Form[""+app[i].ApplicationId]; 
    // the reason you check for false because the Html checkbox helper does some kind of freaky thing for value true: it makes the string read "true, false" 
     if(checkbox!="false") 
     { 
     //etc...almost same for other parameters you want that are in thr form 
     } 

    } 
//of course return your view 
return View("Index");//this vaires by the name of your view ex: if Index.aspx 
    } 

इस साइट में कैसे नियंत्रक के बारे में जानकारी की जाँच करने के रूप में नियंत्रण को ध्यान में रखते नियंत्रित किया जाता है के बारे में अधिक विवरण देता है: http://quickstarts.asp.net/previews/mvc/mvc_HowToRenderFormUsingHtmlHelpers.htm

1

आप यह फ़ॉर्म सबमिट, और कुछ भी करने को चेकबॉक्स के साथ पर महत्व देता योजना बना रहे हैं सर्वर पक्ष, आप उन्हें नाम और मान विशेषताएँ (और समूह समूह में प्रत्येक चेकबॉक्स के लिए समान होना चाहिए) देना चाहते हैं। चेकबॉक्स सहायक जो टीस्टैपर का उल्लेख करता है, वह आपके लिए इसका ख्याल रखता है।

तुम सिर्फ जब चेकबॉक्स टिक या unticked है एक ग्राहक कार्रवाई होने के लिए, आप (कुछ इस तरह कर सकते हैं मैं यह सोचते हैं रहा है कि इन वस्तुओं कुंजी क्षेत्र के कुछ प्रकार है चाहते हैं, मैं इसे फोन कर रहा हूँ MessageId):

<script type="text/javascript"> 
function handleCheckbox(theBox) { 
    if(theBox.checked) { 
    // do checked stuff 
    } 
    else { 
    // do un-checked stuff 
    } 
} 
</script> 

... 

<input type="checkbox" value="<%= w.MessageID %>" onclick="handleCheckbox(this)" /> 

कृपया ध्यान दें कि आईडी मूल्यों एक HTML दस्तावेज के भीतर अद्वितीय होना भी आवश्यक है। इसलिए आईडी "चेकबॉक्स 1" के साथ बहुत सारे चेकबॉक्स बनाना एक अच्छा विचार नहीं है। (यदि वह इनपुट तत्व runat = "server" था, तो .NET वेबफॉर्म आईडी से एक अद्वितीय HTML आईडी उत्पन्न करेगा।