Daniel Cornelissen: (HTML?) Auswahlliste bei NN

Hallo!
Ich habe das Problem, dass ich eine Auswahlliste in ASP einfüge.Der IE zeigt alles schön an, Netscape nichts. Im Quelltext wird zwar angezeigt, dass eine Auswahlliste dargestellt werden soll, aber wie gesagt, es kommt nichts.... Und wenn ich das Formular auswerten möchte fehlt das entsprechende Feld ganz (auch wenn ich nichts eintragen konnte).
Hier der ASP-Code:

' Kombinationsfeld mit Branchen füllen
Response.Write "<select name=""auswahl" & counter & """ size=""1"">"%><%
do until rs3.EOF
if rs3("SID") = rs2("SID") then
%><option selected value="<%=rs3("SID")%>"><%=rs3("Namen_Branche")%></option><%
else
%><option value="<%=rs3("SID")%>"><%=rs3("Namen_Branche")%></option><%
end if
rs3.MoveNext  
loop
Response.Write "<input type=hidden name=""LID" & Counter & """ value=""" & rs2("LID") &""">" %>
</td> </tr> <%

Hier die Tabellenformatierung (die hatte ich aber auch schon mal rausgenommen, hat aber gar nichts bewirkt):
<form method="POST" style="font-family:Tahoma, Verdana, Arial, Helvetica">
<div align="left">
<table cellpadding="4" cellspacing="0" width="100%" height="19" style="font-family:Tahoma, Verdana, Arial, Helvetica;">

Hier der ausgegebene HTML-Code:
<tr>
<td height=24><font size="2"> <input type="text" name="Sparte0" size="34" value="Beratung"> </font></td>
<td>
<select name="auswahl0" size="1"><option value="20">    - -</option><option value="16"> Automobilindustrie</option><option value="18">  Banken</option><option value="14">      Bauwesen</option><option value="2">     Chemie/Pharmazie</option><option value="4">     Elektronik</option><option value="15">  Energie</option><option value="9">      Gesundheitswesen</option><option selected value="10">Handel</option><option value="17"> Industriegüter</option><option value="3">       Kommunikation</option><option value="6">        Konsumgüter</option><option value="13"> Medien</option><option value="5">       Nahrung</option><option value="19">     Sonstige Branche</option><option value="11">    Systemhaus</option><option value="8">   Tourismus</option><option value="12">   Transport</option><option value="7">    Versicherung</option><input type=hidden name="LID0" value="2">
</td> </tr> <tr>
<td height=24><font size="2"> .....

Was mich ein bisschen verwirrt, sind die Leerzeichen nach den Options. Ich kann mir nicht so ganz erklären, wo sie herkommen. Aber beim IE sieht das genauso aus und er hat keinerlei Probleme. Es liegt auch nicht an vermissten Tags; table und form schön am Ende zugemacht. Dabei fällt mir gerade noch ein: warum gehen beide Browser bei diesem Code nicht darauf ein, wenn ich hingehe und <tr width=150> schreibe?

Gruß,
Daniel

  1. Hallo,

    das mit den Leerzeichen kann ich erklären :-)

    Du must eine if then else abfrage durchführen die die leerzeichen rausfiltert am besten du ersetzt in deiner Datenbank oder Textdatei
    Die Leeren felder durch eine null dann kannst du folgendes ausprobieren:

    <%
    On Error Resume Next
    rs.MoveFirst
    do while Not rs.eof

    if rs.Fields("artnrNB")>0 then  <---- Hier ist die Abfrage nach der null

    %>
    <option value="<%=Server.HTMLEncode(rs.Fields("artnrNB").Value)%><%=Server.HTMLEncode(rs.Fields("preisNB").Value)%>"><%=Server.HTMLEncode(rs.Fields("bezNB").Value)%>
    <%
    else
    end if
    rs.MoveNext
    loop
    %>
    </select>

    Ich hoffe das hillft :-))

    ciao

    Michael

    1. Hallo,

      das mit den Leerzeichen kann ich erklären :-)

      Du must eine if then else abfrage durchführen die die leerzeichen rausfiltert am besten du ersetzt in deiner Datenbank oder Textdatei
      Die Leeren felder durch eine null dann kannst du folgendes ausprobieren:

      <%
      On Error Resume Next
      rs.MoveFirst
      do while Not rs.eof

      if rs.Fields("artnrNB")>0 then  <---- Hier ist die Abfrage nach der null

      %>
      <option value="<%=Server.HTMLEncode(rs.Fields("artnrNB").Value)%><%=Server.HTMLEncode(rs.Fields("preisNB").Value)%>"><%=Server.HTMLEncode(rs.Fields("bezNB").Value)%>
      <%
      else
      end if
      rs.MoveNext
      loop
      %>
      </select>

      Ich hoffe das hillft :-))

      ciao

      Michael

      Hallo Michael!
      Danke, aber ich habe weder Leerfeldere noch Leerzeichen in der Datenbank. Das heißt, dass die irgendwo im ASP-Skript geschrieben werden. Bis auf die Select-Abfrage habe ich das ganze auch schon einmal ohne Leerzeichen generiert...
      Gruß,
      Daniel

      1. Hallo,

        OK wusste ich nicht dies war aufjedenfall mein problem gewesen. Nun denn das script funktioniert aufjedenfall im NN. Hoffe das du dies gebrauchen kannst. :-)

        ciao

        Michael

  2. Hi Daniel,

    evt. versteht NN das <DIV> Tag nicht.. außerdem hat es sich recht schwierig bei nicht abgeschlossenen Tags, vorallem was <form> und <table> betrifft - oder auch bei allen??

    Bitte überprüf nochmal den HTML-Code für <form> und <table>..

    Wenn kein ASP-Fehler kommt, is doch schon die halbe Miete, dann kann nur irgendwo ein trivialer Fehler im Syntax stecken.. geht mir oft genauso..

    Gruß, Frank

  3. Hallo Daniel!

    Ich habe das Problem, dass ich eine Auswahlliste in ASP einfüge.Der IE zeigt alles schön an, Netscape nichts. Im Quelltext wird zwar angezeigt, dass eine Auswahlliste dargestellt werden soll, aber wie gesagt, es kommt nichts.... Und wenn ich das Formular auswerten möchte fehlt das entsprechende Feld ganz (auch wenn ich nichts eintragen konnte).

    Ich habe mir den ausgegebenen HTML-Code mal angesehen und dabei fiel mir auf, daß etwas fehlt, was Du schon im ASP-Code vergessen hast. Dem schlampigen IE macht das nichts aus, der genaue NN mag das nicht.

    Hier der ASP-Code:

    ' Kombinationsfeld mit Branchen füllen
    Response.Write "<select name=""auswahl" & counter & """ size=""1"">"%><%
    do until rs3.EOF
    if rs3("SID") = rs2("SID") then
    %><option selected value="<%=rs3("SID")%>"><%=rs3("Namen_Branche")%></option><%
    else
    %><option value="<%=rs3("SID")%>"><%=rs3("Namen_Branche")%></option><%
    end if
    rs3.MoveNext  
    loop

    Hier fehlt das Einfügen des "</SELECT>", welche Deine Auswahlliste schließt.

    Response.Write "<input type=hidden name=""LID" & Counter & """ value=""" & rs2("LID") &""">" %>
    </td> </tr> <%
    Hier der ausgegebene HTML-Code:
    <tr>
    (...)<option value="7">    Versicherung</option>

    Dadurch fehlt dann hier das "</SELECT>", und die Auswahlliste ist damit nicht geschlossen und somit für NN nicht existent.

    <input type=hidden name="LID0" value="2">

    Gruß,
    Michael N.

    1. Hallo Michael N.!

      Danke, dass war es. Einfach in den Schleifen die Übersicht verloren ;-)

      Gruß,
      Daniel

  4. Hi Daniel,

    NS hat Probleme, wenn eine Tabelle innerhalb einer Form definiert wird. Versuch mal, die Form innerhalb von <td>...</td> auf und zu zu machen.

    Grüße,

    Utz