MyBB.de Forum

Normale Version: Javascript Feld sperren?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hiho!
Ich habe ein Dropdownfeld und würde gerne wenn dort Sonstiges ausgewählt wird ein Input Feld freigeben das nur dann was dort rein geschrieben werden kann. Leider klappt das aber nicht. Sad Ich finde auch den Fehler nicht. Wäre nett wenn mal jemand schaut ob er einen Fehler findet.
Hier mal den Quellcode. Es ist das newreply Template. Das JS wird noch in eine Datei ausgelagert wenn ich alles fertig programmiert habe.

Code:
<html>
<head>
<title>{$lang->post_reply_to}</title>
{$headerinclude}
<script type="text/javascript" src="jscripts/post.js?ver=1400"></script>
<script type="text/javascript">
function sonstiges_aktivieren(obj){
if(obj.value=='sonstige'){
alert(obj.value);
var deaktiviert = true;
  } else {
    var deaktiviert = false;
  }
document.getElementByID('wettart').disabled = deaktiviert;

}

function clone_this(objButton)
{
if(objButton.parentNode)
    {
    
    ersteselement=document.getElementById("tipp_eintragen").getElementsByTagName("table").length;
    tmpNode=document.getElementById(ersteselement).cloneNode(true);

    var nummer=ersteselement+1;
    tmpNode.id=nummer;
    //objButton.form.appendChild(tmpNode);
    document.getElementById("tipp_eintragen").insertBefore(tmpNode,document.getElementById("tipp"));
    
    for(j=0;j<document.getElementById(nummer).getElementsByTagName("input").length;++j)
        {     
        if(document.getElementById(nummer).getElementsByTagName("input")[j].type=='text')
            {
            document.getElementById(nummer).getElementsByTagName("input")[j].value='';
            //break;
            }
        }
        
    //objButton.value="entfernen";
    //objButton.onclick=new Function('f1','this.form.removeChild(this.parentNode)');
    }
}
</script>
</head>
<body>
{$header}
{$preview}
{$maximageserror}
{$attacherror}
{$reply_errors}
<form action="newreply.php?tid={$tid}&amp;processed=1" method="post" enctype="multipart/form-data" name="input">
<input type="hidden" name="my_post_key" value="{$mybb->post_code}" />
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder">
<tr>
<td class="thead" colspan="2"><strong>{$lang->post_new_reply}</strong></td>
</tr>
<tr>
<td class="tcat" colspan="2"><span class="smalltext"><strong>{$lang->reply_to}</strong></span></td>
</tr>
{$loginbox}
<tr>
<td class="trow2" width="20%"><strong>{$lang->post_subject}</strong></td>
<td class="trow2"><input type="text" class="textbox" name="subject" size="40" maxlength="85" value="{$subject}" tabindex="1" /></td>
</tr>
{$posticons}
<tr>
<td class="trow2" valign="top"><strong>{$lang->your_message}</strong><br />{$smilieinserter}</td>
<td class="trow2">
<textarea id="message" name="message" rows="20" cols="70" tabindex="2" >{$message}</textarea>
{$codebuttons}
{$multiquote_external}
</td>
</tr>
<tr>
<td class="trow1" valign="top"><strong>{$lang->post_options}</strong></td>
<td class="trow1"><span class="smalltext">
<label><input type="checkbox" class="checkbox" name="postoptions[signature]" value="1" tabindex="6"{$postoptionschecked['signature']} /> {$lang->options_sig}</label>
{$disablesmilies}
</span></td>
</tr>
{$modoptions}
{$subscriptionmethod}
{$captcha}
</table>
{$attachbox}
<br />


<!-- Test Start-->
<div id="tipp_eintragen">
<table id="1" border="0" cellspacing="0" cellpadding="4" class="tborder">
<tr>
    <td class="thead" colspan="3"><strong>Neuer Tipp</strong></td>
</tr>
<tr>
    <td class="tcat smalltext" colspan="3">Hier kannst du einen neuen Tipp, der in deine Statistik eingehen wird, an deinen Beitrag anhängen. Alle Felder sind Pflichtfelder!</td>

</tr>
<tr>
<td class="trow2" valign="top"><strong>Datum - Uhrzeit</strong><br/></td>
<td class="trow2"><input id="bet_date" type = "text" size = "25" name = "bet_date[]"></td>
</tr>
<tr>
<td class="trow2" valign="top"><strong>Liga</strong><br/></td>
<td class="trow2"><input type = "text" size = "25" name = "bet_liga[]"></td>
</tr>
<tr>
<td class="trow2" valign="top"><strong>Beteiligte Mannschaften</strong><br/></td>
<td class="trow2"><input type = "text" size = "25" name = "bet_parties"></td>
</tr>
<tr>
<td class="trow2" valign="top"><strong>Wettart</strong><br/>Sonstige Wettart (nur wenn bei Wettart sonstiges ausgewählt):</td>
<td class="trow2" valign="top">
<select onchange="sonstiges_aktivieren(this.options[this.options.selectedIndex])" name="bet_concept[]" size="1">
      <option value='1x2'>1X2</option>
      <option value='dc'>DoppelChance</option>
      <option value='ou'>Over/Under</option>
      <option value='ahc'>ahc</option>
      <option value='hc'>HandiCap</option>
      <option value='sonstige'>Sonstige</option>
    </select>
<br />
<input id="wettart" type = "text" size = "25" name = "bet_concept_sonstiges[]" disabled>
</td>
</tr>
<tr>
<td class="trow2" valign="top"><strong>Tipp</strong><br/></td>
<td class="trow2"><input type = "text" size = "25" name = "bet_tip"></td>
</tr>
<tr>
<td class="trow2" valign="top"><strong>Quote (bitte "." statt ","!!!)</strong><br/></td>
<td class="trow2"><input type = "text" size = "25" name = "bet_rate"></td>
</tr>
<tr>
<td class="trow2" valign="top"><strong>Einsatz (0-10 Units)</strong><br/></td>
<td class="trow2">
<select name="bet_einsatz" size="1">
      <option>0</option>
      <option>1</option>
      <option>2</option>
      <option>3</option>
      <option>4</option>
      <option>5</option>
      <option>6</option>
      <option>7</option>
      <option>8</option>
      <option>9</option>
      <option>10</option>
    </select>
</td>
</tr>
<tr>
<td class="trow2" valign="top"><strong>Buchmacher</strong><br/></td>
<td class="trow2"><input type = "text" size = "25" name = "bet_bookmaker"></td>
</tr>
</table>
<br id="tipp"/>
</div>

<!-- Test Ende-->

<br />
<div align="center"><input type="button" value="noch ein Tipp" onclick="clone_this(this)"><input type="submit" class="button" name="submit" value="{$lang->post_reply}" tabindex="3" accesskey="s" />  <input type="submit" class="button" name="previewpost" value="{$lang->preview_post}" tabindex="4" />{$savedraftbutton}</div>
<input type="hidden" name="action" value="do_newreply" />
<input type="hidden" name="replyto" value="{$replyto}" />
<input type="hidden" name="posthash" value="{$posthash}" />
<input type="hidden" name="attachmentaid" value="" />
<input type="hidden" name="attachmentact" value="" />
<input type="hidden" name="quoted_ids" value="{$quoted_ids}" />
<input type="hidden" name="tid" value="{$tid}" />
{$editdraftpid}
</form>
{$forumrules}
{$threadreview}
{$footer}
</body>
</html>
Was funktioniert denn nicht? Werden die Funktionen überhaupt aufgerufen?
Ja die Funktionen werden auf gerufen.
Unter http://81.89.101.37/mybb/newreply.php?tid=2
Benutzername: test pw: testtest
kannst du es dir mal anschauen was schon geht. Er gibt das Feld nicht wieder frei.
Ich kann mich da nicht einloggen.
Nun nach W3C muss als Eigenschaft "disabled" und nicht "true/false" gesetzt werden, versuch mal ...disabled = "disabled";
Ob es aber wirklich daran liegt... ich pers. würde es bezweifeln, aber kann ja nicht schaden es zu probieren Smile

PHP-Code:
function sonstiges_aktivieren(obj){

        $(
'wettart').disabled = (obj.value == 'sonstige')? "":"disabled";



Ich habe den Code auf deiner verlinkten Seite getestet und es klappt wunderbar Smile
(19.03.2010, 14:00)StefanT schrieb: [ -> ]Ich kann mich da nicht einloggen.

hast du als PW testtest benutzt? Hatte ein test erst vergessen.

(19.03.2010, 14:12)XxAnimusxX schrieb: [ -> ]Nun nach W3C muss als Eigenschaft "disabled" und nicht "true/false" gesetzt werden, versuch mal ...disabled = "disabled";
Ob es aber wirklich daran liegt... ich pers. würde es bezweifeln, aber kann ja nicht schaden es zu probieren Smile

PHP-Code:
function sonstiges_aktivieren(obj){

        $(
'wettart').disabled = (obj.value == 'sonstige')? "":"disabled";



Ich habe den Code auf deiner verlinkten Seite getestet und es klappt wunderbar Smile

Ja so gehts, danke. Smile
Kannst du das evt noch mal in langer schreibweise schreiben? Also mit if.
Nein, hell sehen kann ich nicht. Allerdings kann ich mich wegen falsche Cookie-Daten immer noch nicht anmelden.
Bei mir geht aber alles. Was sind falsche Cookie Daten? Also woran kann das liegen?
Du musst die Cookie-Domain leer lassen, da du keine Domain benutzt.
Achso ok, ist erledigt.
Seiten: 1 2