Forum
Merhabalar,
ASP.NET'te çok yeniyim ve bazı problemler yaşıyorum. Şöyle ki;
Çalıştığım şirket için bir anket uygulaması yapıyorum. Bu anket müşteri memnuniyeti hakkında. SQL veritabanında soru ve cevapları tutuyorum. ve repeater ile bunları sayfada gösteriyorum. Ancak bir problem var. Ankette hem radiobutton hem checkbox hemde text şeklinde cevap şekilleri var. İlk olarak radiobutton ile başladım. 3 soru yazdım. herbir sorunun 5 şıkkı var. İnternetten bulduğum bir script ile radiobuttonlara tekli seçim yaptırdım ancak bu sefer de gruplandırma yapamıyorum. Örneğin, 1. sorunun şıkkını seçiyorum, 2. sorunun şıkkını seçtiğimde 1. seçtiğim şık siliniyor. Yani tüm radiobuttonlar 1 grupta gibi. Ne kadar anlatabildim bilmiyorum ama yardımınıza ihtiyacım var. Anlamadığınız yeri tekrar açıklayabilirim. ASP.net'te yeni olduğumu da unutmadan cevaplamanızı temenni ederim Cevaplarınızı sabırsızlıkla bekliyorum. Teşekkürler.
<asp:RadioButtonList ID="rblSoru1" runat="server">
<asp:ListItem>Seçenek 1</asp:ListItem>
<asp:ListItem>Seçenek 2</asp:ListItem>
<asp:ListItem>Seçenek 3</asp:ListItem>
</asp:RadioButtonList>
<span>Hangi Gemi?</span>
<asp:RadioButtonList ID="rblSoru2" runat="server">
<asp:ListItem>Seçenek 1</asp:ListItem>
<asp:ListItem>Seçenek 2</asp:ListItem>
<asp:ListItem>Seçenek 3</asp:ListItem>
</asp:RadioButtonList>
<span>Hangi Uçak?</span>
<asp:RadioButtonList ID="rblSoru3" runat="server">
<asp:ListItem>Seçenek 1</asp:ListItem>
<asp:ListItem>Seçenek 2</asp:ListItem>
<asp:ListItem>Seçenek 3</asp:ListItem>
</asp:RadioButtonList>
<asp:RadioButtonList ID="rblSoru1" runat="server">
<asp:ListItem>Seçenek 1</asp:ListItem>
<asp:ListItem>Seçenek 2</asp:ListItem>
<asp:ListItem>Seçenek 3</asp:ListItem></asp:RadioButtonList>
<span>Hangi Gemi?</span>
<asp:RadioButtonList ID="rblSoru2" runat="server"><asp:ListItem>Seçenek 1</asp:ListItem>
<asp:ListItem>Seçenek 2</asp:ListItem>
<asp:ListItem>Seçenek 3</asp:ListItem></asp:RadioButtonList>
<span>Hangi Uçak?</span>
<asp:RadioButtonList ID="rblSoru3" runat="server"><asp:ListItem>Seçenek 1</asp:ListItem>
<asp:ListItem>Seçenek 2</asp:ListItem>
<asp:ListItem>Seçenek 3</asp:ListItem></asp:RadioButtonList>
merhaba, ilginize teşekkür ederim. bunu javascipt yöntemi ile çözdüm. ama bu sefer başka bir sorun var. Şöyle;
şimdi benim elimde 10 tane soru var. bunların 1 tanesinin cevapları checkbox ile, 2 tanesinin cevapları textbox ile ve diğerleri de radiobutton ile. radio buttonlara tek seçim ve gruplandırmayı yaptım, problem kalmadı. ancak şimdi bütün soruların şıkları radiobutton şeklinde çıkıyor. checkbox ve textbox çıkmıyordu.
Ben şöyle düşündüm; bütün sorularda hem textbox ı, hem checkbox ı hemde radiobutton u göstereceğim. veritabanındaaki tip alanından ise cevap tipini seçeceğim. eğer check ise radiobutton ve textbox gizlenecek, text ise radiobutton ve checkbox gizlenecek ve eğer radio ise checkbox e textbox gizlenecek. Ama bunu nasıl yapacağım ? :/
Yönteminiz yanlış. webformda winform gibi esnek olamazsınız. Sorular ve cevap tipleri belli sizin buradaki sorununuz toplama kodları bir araya getirmek. Probleminizi %100 çözmek için birebir çalışmak lazım.
webform da soruları yazdıktan sonra radıobutonları enable hale getırın istersenız butonlarla checkboxları secılı hale getırebılırsınız
if (radıobutton1.ischecked==true)
(
label1.text="dogru cevap"+radiobuton1.selectıtem.tostrıng()
)
checbox1.checked==true;
checkbox2.checked==true;
(
Merhaba Cem ve İlhan bey,
Acaba ben mi demek istediğinizi anlamadım bilmiyorum. Ama butonlarla checkbox seçme gibi bir alternatifim olamaz. Şıklarda sadece bir tanesi görünmeli. Benim kodum şöyle ama çalışmıyor ;
Default.aspx.cs;
protected void Page_Load(object sender, EventArgs e)
{
SqlDataAdapter adp = new SqlDataAdapter("select * from Soru", conStr);
DataSet ds = new DataSet();
adp.Fill(ds);
rptSorular.DataSource = ds.Tables[0];
rptSorular.DataBind();
}
protected void rptSorular_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
DataList rptCevap = (DataList)e.Item.FindControl("rptCevap");
DataList tip = (DataList)e.Item.FindControl("tip");
HiddenField hdSoruId = (HiddenField)e.Item.FindControl("hdSoruId");
HiddenField tipp = (HiddenField)e.Item.FindControl("tipp");
SqlDataAdapter adp = new SqlDataAdapter(string.Format("select * from Cevap where SoruId = {0}", hdSoruId.Value), conStr);
DataTable dt = new DataTable();
adp.Fill(dt);
rptCevap.DataSource = dt;
rptCevap.DataBind();
SqlDataAdapter adptip = new SqlDataAdapter(string.Format("select Tip from Soru", tipp.Value), conStr);
DataTable dttip = new DataTable();
adptip.Fill(dttip);
tip.DataSource = dttip;
tip.DataBind();
RadioButton rd = e.Item.FindControl("rbOrnek") as RadioButton;
CheckBox cb = e.Item.FindControl("Check") as CheckBox;
TextBox tb = e.Item.FindControl("Text") as TextBox;
if (tipp.Value == "Check")
{
rd.Visible = false;
tb.Visible = false;
}
else if (tipp.Value == "Text")
{
rd.Visible = false;
cb.Visible = false;
}
else if (tipp.Value == "Radio")
{
cb.Visible = false;
tb.Visible = false;
}
}
protected void rptCevap_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType != ListItemType.Item && e.Item.ItemType != ListItemType.AlternatingItem)
return;
RadioButton rd = e.Item.FindControl("rbOrnek") as RadioButton;
HiddenField hdSoruId = e.Item.FindControl("hdSoruId") as HiddenField;
rd.GroupName = hdSoruId.Value;
string script = "SetSingleRadioButton('" + rd.ClientID + "',this,'" + hdSoruId.Value + "')";
rd.Attributes.Add("onclick", script);
}
Default.aspx;
<%@ Page Title="" Language="C#" MasterPageFile="~/anket.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="CreaAnket.WebForm1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="Title" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Body" runat="server">
<form id="form1" runat="server">
<script type="text/javascript">
function SetSingleRadioButton(nameregex, current,groupId) {
re = new RegExp(nameregex);
for (i = 0; i < document.forms[0].elements.length; i++) {
elm = document.forms[0].elements[i];
if (elm.type == 'radio' ) {
if (elm != current) {
var GroupName = new Array();
if (elm.getAttribute("name").split('$')[6] == groupId) {
GroupName = elm.getAttribute("name");
elm.checked = false;
GroupId = GroupName;
}
}
}
}
}
</script>
<asp:Repeater ID="rptSorular" runat="server" OnItemDataBound="rptSorular_ItemDataBound">
<ItemTemplate>
<div class="col-md-12">
<asp:HiddenField ID="hdSoruId" runat="server" Value='<%#Eval("Id") %>' />
<div class="panel panel-default">
<div class="panel-heading">
<div class="panel-btns">
<a href="#" class="panel-minimize tooltips" data-toggle="tooltip" title="Minimize Panel"><i class="fa fa-minus"></i></a>
<a href="#" class="panel-close tooltips" data-toggle="tooltip" title="Close Panel"><i class="fa fa-times"></i></a>
</div><!-- panel-btns -->
<h5 class="panel-title"> <%#Eval("Soru") %></h5>
</div><!-- panel-heading -->
<div class="panel-body nopadding">
<!-- form-group --> <div class="form-group">
<div class="col-sm-8">
<asp:DataList ID="rptCevap" runat="server" OnItemDataBound="rptCevap_ItemDataBound">
<ItemTemplate>
<div class="rdio rdio-default">
<asp:RadioButton ID="rbOrnek" Text='<%#Eval("Cevap") %>' onKeyPress="return suppress(event);" runat="server" />
</div>
<asp:HiddenField ID="hdSoruId" runat="server" Value='<%#Eval("SoruId") %>' />
<div class="ckbox ckbox-danger">
<asp:CheckBox ID="Check" Text='<%#Eval("Cevap") %>' onKeyPress="return suppress(event);" runat="server" />
</div>
<asp:TextBox ID="Text" Text='<%#Eval("Cevap") %>' onKeyPress="return suppress(event);" runat="server" />
</div>
</ItemTemplate>
</asp:DataList>
</div><!-- col-sm-8 -->
</div><!-- form-group -->
</div><!-- panel-body -->
</div><!-- panel -->
</div><!-- col-md-12 -->
</ItemTemplate>
</asp:Repeater>
</form>
</asp:Content>
Veritabanımdaki Soru tablosundan Tip alanını radiobutton, textbox ve checkbox larla karşılaştıraştırabilirsem olur diye düşünüyorum.
Biraz karışık mı oldu?
Merhaba Cem ve İlhan bey,
Acaba ben mi demek istediğinizi anlamadım bilmiyorum. Ama butonlarla checkbox seçme gibi bir alternatifim olamaz. Şıklarda sadece bir tanesi görünmeli. Benim kodum şöyle ama çalışmıyor ;
Default.aspx.cs;
protected void Page_Load(object sender, EventArgs e)
{SqlDataAdapter adp = new SqlDataAdapter("select * from Soru", conStr);
DataSet ds = new DataSet();
adp.Fill(ds);rptSorular.DataSource = ds.Tables[0];
rptSorular.DataBind();
}protected void rptSorular_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
DataList rptCevap = (DataList)e.Item.FindControl("rptCevap");
DataList tip = (DataList)e.Item.FindControl("tip");
HiddenField hdSoruId = (HiddenField)e.Item.FindControl("hdSoruId");
HiddenField tipp = (HiddenField)e.Item.FindControl("tipp");SqlDataAdapter adp = new SqlDataAdapter(string.Format("select * from Cevap where SoruId = {0}", hdSoruId.Value), conStr);
DataTable dt = new DataTable();
adp.Fill(dt);
rptCevap.DataSource = dt;
rptCevap.DataBind();SqlDataAdapter adptip = new SqlDataAdapter(string.Format("select Tip from Soru", tipp.Value), conStr);
DataTable dttip = new DataTable();
adptip.Fill(dttip);
tip.DataSource = dttip;
tip.DataBind();RadioButton rd = e.Item.FindControl("rbOrnek") as RadioButton;
CheckBox cb = e.Item.FindControl("Check") as CheckBox;
TextBox tb = e.Item.FindControl("Text") as TextBox;if (tipp.Value == "Check")
{
rd.Visible = false;
tb.Visible = false;
}
else if (tipp.Value == "Text")
{
rd.Visible = false;
cb.Visible = false;
}
else if (tipp.Value == "Radio")
{
cb.Visible = false;
tb.Visible = false;
}
}
protected void rptCevap_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType != ListItemType.Item && e.Item.ItemType != ListItemType.AlternatingItem)
return;
RadioButton rd = e.Item.FindControl("rbOrnek") as RadioButton;
HiddenField hdSoruId = e.Item.FindControl("hdSoruId") as HiddenField;rd.GroupName = hdSoruId.Value;
string script = "SetSingleRadioButton('" + rd.ClientID + "',this,'" + hdSoruId.Value + "')";
rd.Attributes.Add("onclick", script);
}
Default.aspx;
<%@ Page Title="" Language="C#" MasterPageFile="~/anket.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="CreaAnket.WebForm1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="Title" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Body" runat="server">
<form id="form1" runat="server"><script type="text/javascript">
function SetSingleRadioButton(nameregex, current,groupId) {
re = new RegExp(nameregex);
for (i = 0; i < document.forms[0].elements.length; i++) {
elm = document.forms[0].elements[i];
if (elm.type == 'radio' ) {
if (elm != current) {
var GroupName = new Array();
if (elm.getAttribute("name").split('$')[6] == groupId) {
GroupName = elm.getAttribute("name");
elm.checked = false;
GroupId = GroupName;
}
}
}
}
}
</script><asp:Repeater ID="rptSorular" runat="server" OnItemDataBound="rptSorular_ItemDataBound">
<ItemTemplate>
<div class="col-md-12">
<asp:HiddenField ID="hdSoruId" runat="server" Value='<%#Eval("Id") %>' />
<div class="panel panel-default">
<div class="panel-heading">
<div class="panel-btns">
<a href="#" class="panel-minimize tooltips" data-toggle="tooltip" title="Minimize Panel"><i class="fa fa-minus"></i></a>
<a href="#" class="panel-close tooltips" data-toggle="tooltip" title="Close Panel"><i class="fa fa-times"></i></a>
</div><!-- panel-btns -->
<h5 class="panel-title"> <%#Eval("Soru") %></h5>
</div><!-- panel-heading -->
<div class="panel-body nopadding">
<!-- form-group --> <div class="form-group">
<div class="col-sm-8">
<asp:DataList ID="rptCevap" runat="server" OnItemDataBound="rptCevap_ItemDataBound">
<ItemTemplate>
<div class="rdio rdio-default">
<asp:RadioButton ID="rbOrnek" Text='<%#Eval("Cevap") %>' onKeyPress="return suppress(event);" runat="server" />
</div>
<asp:HiddenField ID="hdSoruId" runat="server" Value='<%#Eval("SoruId") %>' />
<div class="ckbox ckbox-danger">
<asp:CheckBox ID="Check" Text='<%#Eval("Cevap") %>' onKeyPress="return suppress(event);" runat="server" />
</div>
<asp:TextBox ID="Text" Text='<%#Eval("Cevap") %>' onKeyPress="return suppress(event);" runat="server" /></div>
</ItemTemplate>
</asp:DataList></div><!-- col-sm-8 -->
</div><!-- form-group --></div><!-- panel-body -->
</div><!-- panel -->
</div><!-- col-md-12 -->
</ItemTemplate>
</asp:Repeater>
</form>
</asp:Content>
Veritabanımdaki Soru tablosundan Tip alanını radiobutton, textbox ve checkbox larla karşılaştıraştırabilirsem olur diye düşünüyorum.
Biraz karışık mı oldu?
bencede cok karısık bu soruyu erdem hoca yanıtlasın ıyı calısmalar
Ben sizi anladım ama siz beni anlamıyorsunuz. Radio butonları ayırmayı sormuştunuz cevap verdim. Sonra sizin verdiğiniz cevaptan probleminizi buradan çözemeyeceğinizi gördüm. Yapmak istediğiniz şey benim için basit, ben konusunda uzman biriyim. Ama sizin sorunuzun cevabı forumda soru cevaplarla değil teamviewer ve skype ile yarım saatte çözülebilir ancak. Bunu söyledim. Sorunun çözümü için özelden ulaşın lütfen.
Ben sizi anladım ama siz beni anlamıyorsunuz. Radio butonları ayırmayı sormuştunuz cevap verdim. Sonra sizin verdiğiniz cevaptan probleminizi buradan çözemeyeceğinizi gördüm. Yapmak istediğiniz şey benim için basit, ben konusunda uzman biriyim. Ama sizin sorunuzun cevabı forumda soru cevaplarla değil teamviewer ve skype ile yarım saatte çözülebilir ancak. Bunu söyledim. Sorunun çözümü için özelden ulaşın lütfen.
merhaba zaten forum kuralları gereki uzak baglantı desteği vermiyoruz. uzmanlık yada bilir kişilik durumu değil buradaki olay kendimizi net ifade edememe durumu biraz daha güzel anlatım ve kelimeler ile muhtemelen hepimiz sorunu daha net anlayacağız ve çözüm park ekibi olarak daha net cevaplar verebileceğiz.
saygılar
ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com
Pelin selam Projeni komple zipleyip gönderebilme şansın varmı ? eğer var ise bana gönderirmisin saygılar
ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com
Projeyi zipleyip göndermekle uzak yardımın farkı nedir?
Kurallar siteyi nitelikli yapar. Sizde burada iseniz nitelikli bir bireysinizdir. https://www.cozumpark.com/forums/thread/650.aspx okumanızı tavsiye ederim.
saygılar
ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com
Merhabalar,
İlginiz için hepinize teşekkür ediyorum. Sorunu dediğim gibi if ifadesi ile çözmüş bulunmaktayım 🙂 Teşekkür ederim
Merhaba,
Bunu neden google veya microsoftun ücretsiz sistemleri ile yapmıyorsunuz? Çok hızlı ve basit 30 dakikada bitirebilirsiniz.
1984 doğumluyum. 4 yaşından bu yana İstanbul’da yaşıyorum. Sırası ile aşağıdaki okullarda eğitim gördüm. Paşaköy ilkokulu (1990-1995) Kartal Zekeriyya Güçer İlköğretim Okulu(1995-1998) Ümraniye Teknik ve Endüstri Meslek Lisesi Bilgisayar Bölümü(1998-2001) Kocaeli Üniversitesi Bilgisayar Programcılığı(2002-2004) Anadolu Ünv. İşletme Fakültesi(2006-2009) Lise yıllarından sonra bir bilgisayar firmasının teknik servisinde mesleğe merhaba dedim. Outsource olarak Citibank ytl ve bina taşınma projesinde yer alarak 8 ay görev yaptım. Bu görevden sonra şu an çalışmakta olduğum yerde bilgi işlem sorumlusu olarak göreve başladım ve 18 yıldır görevimin başındayım.
Çalıştığım firma o şekilde istemiyor