|
JavaScript bei CheckBox in GridView
-
-
-
Albert Weinert


- Registriert am 03-03-2006
- Köln, Germany
- Beiträge 675
|
Re: JavaScript bei CheckBox in GridView
Christoph Schmid schrieb:
> " onclick="alert('clicked> Eval("AUZ931") %>')" runat="server">
>
> Das gibt mir aber Fehler, weil das Tag nicht korrekt formatiert sei.
Viel einfacher.
"
onclick="checkBoxClick(this);"/>
function checkBoxClick(ele)
{
var auz931 = ele.id.substring(4);
alert(auz931);
}
--
Freundliche Grüße
Albert Weinert
http://der-albert.com
http://www.afterlaunch.de Die Community Konferenz nach dem Launch von Visual Studio 2008
|
|
-
-
ChristophSchmid


- Registriert am 03-03-2006
- Wil / Schweiz
- Beiträge 897
|
Re: JavaScript bei CheckBox in GridView
ohne das runat?
so sehe ich die CheckBox nähmlich gar nicht
Zudem muss ich dann beim PostBack auf die CB's zugreiffen können.
Albert Weinert schrieb:
> Christoph Schmid schrieb:
>
>
>> " onclick="alert('clicked>> Eval("AUZ931") %>')" runat="server">
>>
>> Das gibt mir aber Fehler, weil das Tag nicht korrekt formatiert sei.
>>
>
> Viel einfacher.
> "
> onclick="checkBoxClick(this);"/>
>
>
> function checkBoxClick(ele)
> {
> var auz931 = ele.id.substring(4);
> alert(auz931);
> }
>
>
>
|
|
-
-
Albert Weinert


- Registriert am 03-03-2006
- Köln, Germany
- Beiträge 675
|
Re: JavaScript bei CheckBox in GridView
Christoph Schmid schrieb:
> ohne das runat?
> so sehe ich die CheckBox nähmlich gar nicht
> Zudem muss ich dann beim PostBack auf die CB's zugreiffen können.
Natürlich mit runat, ist beim C&P über die Wupper gegangen.
--
Freundliche Grüße
Albert Weinert
http://der-albert.com
http://www.afterlaunch.de Die Community Konferenz nach dem Launch von Visual Studio 2008
|
|
-
-
ChristophSchmid


- Registriert am 03-03-2006
- Wil / Schweiz
- Beiträge 897
|
Re: JavaScript bei CheckBox in GridView
Dann ist es eben fast das gleiche und ergibt den folgenden Fehler:
Servertag wurde falsch formatiert.
" onclick="checkBoxClick(this);" runat="server">
Oder habe ich etwas übersehen?
Gruss Christoph
Albert Weinert schrieb:
> Christoph Schmid schrieb:
>
>> ohne das runat?
>> so sehe ich die CheckBox nähmlich gar nicht
>> Zudem muss ich dann beim PostBack auf die CB's zugreiffen können.
>>
>
> Natürlich mit runat, ist beim C&P über die Wupper gegangen.
>
>
>
|
|
-
-
Albert Weinert


- Registriert am 03-03-2006
- Köln, Germany
- Beiträge 675
|
Re: JavaScript bei CheckBox in GridView
Christoph Schmid schrieb:
> Dann ist es eben fast das gleiche und ergibt den folgenden Fehler:
> Servertag wurde falsch formatiert.
>
> " onclick="checkBoxClick(this);" runat="server">
>
> Oder habe ich etwas übersehen?
Hm, dass die ID zur Compilezeit feststehen muss und nicht Bindable ist?
Sonst ist das Control eh nicht wirklich ansprechbar. Auch könnte es
daran liegen das in AUZ931 drin steht.
Also dann ohne runat="server" und ohne sondern mit und
auswertung per Hand, auf dem Server mit Request.Form[].
Oder halt mit einem Repeater sowie arbeiten, und dort die
"Zeile" festzuhalen die man dann per JavaScript ausliest oder setzt.
Schwierig ne Lösung nun vorzuschlagen ohne zu wissen was Du genau willst.
--
Freundliche Grüße
Albert Weinert
http://der-albert.com
http://www.afterlaunch.de Die Community Konferenz nach dem Launch von Visual Studio 2008
|
|
-
-
ChristophSchmid


- Registriert am 03-03-2006
- Wil / Schweiz
- Beiträge 897
|
Re: JavaScript bei CheckBox in GridView
>
> Also dann ohne runat="server" und ohne sondern mit und
> auswertung per Hand, auf dem Server mit Request.Form[].
>
Wäre eine Notlösung, welche ich auch schon überlegt habe.
> Oder halt mit einem Repeater sowie arbeiten, und dort die
> "Zeile" festzuhalen die man dann per JavaScript ausliest oder setzt.
> Schwierig ne Lösung nun vorzuschlagen ohne zu wissen was Du genau willst.
Ich möchte einfach einen JavaScript-Event mit Funktion und in der
Funktion wissen, wie ich auf ein anderes Element(hier CheckBox) in der
gleichen Zeile zugreiffen kann.
Gruss Christoph
|
|
-
-
Alexander Zeitler


- Registriert am 02-25-2006
- Karlsruhe
- Beiträge 1.654
|
RE: JavaScript bei CheckBox in GridView
Zwei asp:Checkbox'es in je ein TemplateField,
im HTML-Part folgendes Javascript platzieren:
function Toggle(secondbox) {
secondbox.checked = true;
}
Im RowDataBound folgenden Code:
if (e.Row.RowType == DataControlRowType.DataRow) {
CheckBox CheckBox1 = (CheckBox)e.Row.FindControl("CheckBox1");
CheckBox CheckBox2 = (CheckBox)e.Row.FindControl("CheckBox2");
if (CheckBox1 != null && CheckBox2 != null) {
CheckBox1.Attributes.Add("onclick", "Toggle(" + CheckBox2.ClientID + ")");
}
}
funktioniert hier problemlos.
Toggle mußt Du halt noch so umbauen, dass wenn 1 wieder deaktiviert
wird, 2 nachgezogen wird.
Gruss
Alex
|
|
-
-
Alexander Zeitler


- Registriert am 02-25-2006
- Karlsruhe
- Beiträge 1.654
|
RE: JavaScript bei CheckBox in GridView
also praktisch so:
function Toggle(firstbox, secondbox) {
secondbox.checked = firstbox.checked;
}
Der angepasste RowDataBound-Code
CheckBox1.Attributes.Add("onclick", "Toggle(" + CheckBox1.ClientID + "," + CheckBox2.ClientID + ")");
Gruss
Alex
|
|
-
-
ChristophSchmid


- Registriert am 03-03-2006
- Wil / Schweiz
- Beiträge 897
|
Re: JavaScript bei CheckBox in GridView
Hallo Alex
Super Lösung. Danke
Gruss Christoph
Alexander Zeitler schrieb:
> also praktisch so:
>
> function Toggle(firstbox, secondbox) {
> secondbox.checked = firstbox.checked;
> }
>
>
> Der angepasste RowDataBound-Code
>
> CheckBox1.Attributes.Add("onclick", "Toggle(" + CheckBox1.ClientID + "," + CheckBox2.ClientID + ")");
>
> Gruss
>
> Alex
>
>
>
>
>
|
|
-
-
Albert Weinert


- Registriert am 03-03-2006
- Köln, Germany
- Beiträge 675
|
Re: JavaScript bei CheckBox in GridView
Alexander Zeitler schrieb:
> function Toggle(firstbox, secondbox) {
> secondbox.checked = firstbox.checked;
> }
Sicher?
function Toogle(firstbox, secondbox)
{
var fb = document.getElementById(firstbox);
var sb = document.getElementById(secondbox);
sb.checked = fb.checked;
}
oder sofern man einen JS-Lib verwendet die das "übliche" $() anbietet.
function Toogle(firstbox, secondbox)
{
$(secondbox).checked = $(firstbox).checked;
}
> CheckBox1.Attributes.Add("onclick", "Toggle(" + CheckBox1.ClientID + "," + CheckBox2.ClientID + ")");
Ich weiss schon warum ich alles im CodeBehind mache. Dann bleiben wir
einige Probleme erspart. Das ganze gekröse mag ich einfach nicht.
--
Freundliche Grüße
Albert Weinert
http://der-albert.com
http://www.afterlaunch.de Die Community Konferenz nach dem Launch von Visual Studio 2008
|
|
-
-
Alexander Zeitler


- Registriert am 02-25-2006
- Karlsruhe
- Beiträge 1.654
|
RE: JavaScript bei CheckBox in GridView
>
> Sicher?
naja, immerhin hat es in FF, IE + Opera funktioniert.
Sauberer ist es sicher über getElementById.
>
> Ich weiss schon warum ich alles im CodeBehind mache. Dann bleiben wir
> einige Probleme erspart. Das ganze gekröse mag ich
> einfach nicht.
>
kann ich mich nur anschließen, deshalb ja auch dieser Ansatz ;-)
Gruss
Alex
|
|
-
-
Albert Weinert


- Registriert am 03-03-2006
- Köln, Germany
- Beiträge 675
|
Re: JavaScript bei CheckBox in GridView
Alexander Zeitler schrieb:
>> Sicher?
>
> naja, immerhin hat es in FF, IE + Opera funktioniert.
> Sauberer ist es sicher über getElementById.
Jein, sicher ist es sauberer ... aber auch nur wenn man wirklich eine
ClientID übergeben bekommt, aber da habe ich nicht genau hingesehen. Ich
habe nur ClientID gesehen und gedacht das Du diese auch übergibst,
machst Du ja aber nicht. Da Du es ja nicht in '' gesetzt hast und das
das Toogle() wohl im Kontext von aufgerufen wird und JS dies
dann als Eigenschaft der interpretiert, deshalb klappt dies.
--
Freundliche Grüße
Albert Weinert
http://der-albert.com
http://www.afterlaunch.de Die Community Konferenz nach dem Launch von Visual Studio 2008
|
|
-
-
ChristophSchmid


- Registriert am 03-03-2006
- Wil / Schweiz
- Beiträge 897
|
Re: JavaScript bei CheckBox in GridView
Hallo
Hab das so umgestellt.
Gruss Christoph
|
|
Seite 1 von 1 (14 Treffer)
|
|
|