Erklärung: Ich bin mir nicht sicher, ob das ein Parameter ist. Bitte erleuchte.Wie kann ich die Anzahl der Parameter in diesem Javascript erhöhen?
Ich habe eine medizinische Fragebogenform mit fast 19 Ja und Nein Optionsfeldern. Die Optionsfelder jeder Frage müssen einen eindeutigen Namen haben, damit es funktioniert. Ich schaffe es, einen geeigneten Code zu finden, um einen Textbereich umzuschalten, wenn das Optionsfeld Ja ausgewählt ist, aber es kann nur in einem der Eingabenamen funktionieren und es gibt 18 weitere, die es ebenfalls benötigen.
Meine Hauptfrage ist:
function displayTextBox()
{
var objElement = document.getElementById('addmed');
addmed.style.display = 'block';
addmed.style.visibility = 'visible';
}
function hideTextBox()
{
var objElement = document.getElementById('addmed');
addmed.style.display = 'none';
addmed.style.visibility = 'hidden';
}
function validate()
{
var arrElements = document.getElementsByName('medq');
var objElement;
var boolContinue = false;
var objaddmedtext;
for(var i=0, _length=arrElements.length; i<_length; i++)
{
objElement = arrElements[i];
if(objElement.checked)
{
if(objElement.id == 'yes')
{
objaddmedtext = document.getElementById('addmedtext');
if(strTrim(objaddmedtext.value).length>0)
{
boolContinue = true;
break;
}
}
else
{
boolContinue = true;
break;
}
}
}
if(boolContinue)
{
alert('Continue, user completed the information.')
}
else
{
alert('Ask user to complete the data.')
}
}
/**
* Removes all white space characters from the string.
*
* @param: {String} String to trim.
*
* @return {String} Trimed string.
*/
function strTrim(strTrim)
{
return strTrim.replace(/^\s+|\s+$/g, '');
}
an diesem Javascript Sehen, ein Textfeld
<div id="addmed" style="display:none;visibility:hidden; margin-left:10px; width:110px;">
<textarea id="addmedtext" cols="60" rows="6" placeholder="Please give details with dates"></textarea>
</div>
erscheint nur, wenn das Optionsfeld Ja für
<tr>
<td width="33">1.</td>
<td width="491">Heart or circulatory problems including: high blood pressure, heart attack, angina, heart murmur, heart failure, palpitations, circulatory problemseg. whitefinger, blocked arteries, stroke aneurysm.</td>
<td width="68"><input name="medq" id="yes" type="radio" value="yes" onclick="displayTextBox()"/><label for="yes"> Yes </label></td>
<td width="78"><input name="medq" id="no" type="radio" value="no" onclick="hideTextBox()"/><label for="no"> No </label></td>
ausgewählt ist
Das ist aber nur 1 Frage ... Ich habe 18 weitere Fragen mit name="medq 1 to 18 "
.
Irgendwelche Ideen, wie man das Javascript redigiert, um die Parameter hinzuzufügen?
Eine Art Nebenkommentar: Wenn Sie einen * medizinischen * Fragebogen machen, bei dem die Gesundheit der Menschen beeinträchtigt sein könnte, würde ich Sie dringend bitten, äußerst strenge Tests durchzuführen, um sicherzustellen, dass Ihr Code korrekt ist. jede * Frage ja UND nein, für den Fall, dass zum Beispiel eine Frage immer mit Ja oder immer mit Nein wegen eines Fehlers markiert wird. – ninjagecko
Als erstes wird ein "ja und nein Radio Button" als Checkbox bezeichnet. Dafür sind sie da.Zweitens müssen Sie die Inline-Größen- und Stildaten aus Ihrem HTML-Code extrahieren. Ich würde auch empfehlen, eine Bibliothek zu verwenden, die irgendeine Art von Selektor bereitstellt, wie zum Beispiel (aber nicht beschränkt auf) jQuery, um Nachrichten zu bekommen und zu verstecken. Wenn Sie keinen Selektor verwenden, stellen Sie sicher, dass getElementById verfügbar ist. – ssube
kann jemand erklären, was 'f.style.display = 'blockiert'; f.style.visibility = 'sichtbar'; 'bedeutet? – Hubert