我有一個應用程序,用戶在textarea中輸入他們的問題,然後單擊「添加問題」按鈕將問題添加到新行中。問題在於應用程序讓用戶在新行中顯示一個問題,但是當我想在新行中提交第二個問題時,它不會讓我。如何在表中添加一行?
(在Jsfiddle中,它不會讓您添加第二個問題,而在我的瀏覽器應用程序中不會讓您添加第二個問題,但它會顯示一個警報,指出問題無效,此警報消息應該不會出現,除非問題textarea是空的或包含少於5個字符。)
那麼如何不讓我在表中添加第二個問題?
我的代碼是在的jsfiddle,單擊here
JS( 「NOWRAP - 身體」 中的jsfiddle選項):
function insertQuestion(form) {
alertErrors = "",
// Note, this is just so it's declared...
qnum = 1;
if (form.questionText.value == ""){
alertErrors += "\nYou have not entered a valid Question\n";
}
else if (form.questionText.value.length < 5){
alertErrors += "\nYou have not entered a valid Question\n";
}
// Stop execution with a return
if (alertErrors != "") {
alert(alertErrors);
return;
}
var $tr = $("<tr></tr>");
var $qid = $("<td class='qid'>" + qnum + "</td>");
var $question = $("<td class='question'></td>");
$('#questionTextArea').each(function() {
var $this = $(this);
var $questionText = $("<textarea></textarea>")
.attr('name',$this.attr('name'))
.attr('value',$this.attr('value'))
$question.append($questionText);
});
$tr.append($qid);
$tr.append($question);
$('#qandatbl').append($tr);
form.numberOfQuestions.value = qnum;
++qnum;
$("#questionNum").text(qnum);
form.questionText.value = "";
}
HTML:
<form id="enter" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post" onsubmit="return validateForm(this);" >
<div id="detailsBlock">
<table id="question">
<tr>
<th colspan="2">
Question Number <span id="questionNum">1</span>
</th>
</tr>
<tr>
<td rowspan="3">Question:</td>
<td rowspan="3">
<textarea id="questionTextArea" rows="5" cols="40" name="questionText"></textarea>
</td>
</tr>
</table>
<table id="questionBtn" align="center">
<tr>
<th>
<input id="addQuestionBtn" name="addQuestion" type="button" value="Add Question" onClick="insertQuestion(this.form)" />
</th>
</tr>
</table>
</div>
<hr/>
<table id="qandatbl" border="1">
<tr>
<th class="qid">Question No</th>
<th class="question">Question</th>
</tr>
</table>
</form>
確保發佈您的代碼中如果jsfiddle.net出現故障,也會讓人們在搜索相關問題時發現你的問題。 – 2011-12-18 03:27:59
感謝merlyn morgan graham :) – BruceyBandit 2011-12-18 03:28:35
感謝大家爲你的答案,非常感謝 – BruceyBandit 2011-12-18 04:03:39