我遇到了警報中顯示的問題號的問題。它不顯示問題編號,而是顯示問題編號作爲問題編號。因此,在警報驗證它規定,例如:如何在警報中顯示正確的號碼
You have errors on question number: 115
當應該說You have errors on question number: 3
例如
下面這段代碼顯示問題ID:value="<?php echo$questionId?>"
此代碼顯示問題編號:echo$searchQuestionNo[array_search($questionId, $searchQuestionId)]
但是當我試圖這樣做時:
<input type='hidden' id='num_groups' name='num_groups' value='<?php echo$searchQuestionNo[array_search($questionId, $searchQuestionId)]`?>'>
它不顯示jquery alert的問題編號。說實話,發生的事情是驗證不起作用,因爲它沒有出現。然而,如果我保持上面的代碼是什麼東西,其價值是問題ID:
<input type='hidden' id='num_groups' name='num_groups' value='<?php echo$questionId?>'>
然後,它顯示了questionId在警報和警報的實際工作。
所以我的問題是如何在警報中包含問題編號值,但是也能夠使驗證工作,就像它對問題提問一樣?
下面是主要的代碼,所以你可以看到一切都來自:
PHP:
<?
// This will hold the search results
$searchQuestionId = array();
$searchQuestionNo = array();
// Fetch the results into an array
// get result and assign variables (prefix with db)
$stmt->bind_result($dbSessionId, $dbSessionName, $dbQuestionId, $dbQuestionNo, $dbQuestionContent, $dbAnswer, $dbAnswerId, $dbQuestionMarks, $dbOptionId, $dbOptionType);
$searchQuestionId[] = $dbQuestionId;
$searchQuestionNo[] = $dbQuestionNo;
}
?>
</head>
<body>
<form id="PenaltyMarks" action="<?php echo htmlentities($action); ?>" method="post">
<?php
$ques_ans = array(); //to store incorrect answers against ques no.
$q_occ_count = array_count_values($searchQuestionId);
foreach($searchQuestionId as $key => $questionId)
{
.....
}
?>
<table id='penaltytbl'>
<thead>
<tr>
<th class='questionth'>Question No.</th>
<th class='questionth'>Question</th>
</tr>
</thead>
<tbody>
<?php
foreach($ques_ans as $questionId => $inc_ans)
{
?>
<tr class="questiontd">
<td class="questionnumtd q<?php echo$searchQuestionNo[array_search($questionId, $searchQuestionId)]?>_qnum" rowspan="<?php echo$q_row_span?>"><?php echo$searchQuestionNo[array_search($questionId, $searchQuestionId)]?>
<input type="hidden" name="numQuestion" value="<?php echo$questionId?>" />
</td>
<td class="answermarkstd">
<input class="individualMarks q<?php echo$questionId?>_mark" q_group="1" name="answerMarks[]" type="text" data-type="qmark" data-qnum="<?php echo$questionId?>" onkeypress="return isNumberKey(event)" maxlength="3" value="0" />
</td>
</tr>
<?php
}
?>
</tbody>
</table>
<p>
<input type='hidden' id='num_groups' name='num_groups' value='<?php echo$questionId?>'>
<input id="submitBtn" name="submitPenalty" type="submit" value="Submit Marks" />
</p>
</form>
的Jquery:
< script type = "text/javascript" >
myClickHandler = function (e) {
var ng = $('#num_groups').val();
for (var group = 1; group
<= ng; group++) {
if (!validation(group)) return false;
}
});
function validation(group) {
var msg = [];
var nb = 0; // Number of blank values
$("input[data-qnum='" + group + "']").each(function() {
if ($(this).val() == '') {
nb++;
return false;
}
});
if (nb != 0) {
msg.push("\u2022 You have not entered in a value in all the Penalty Marks textbox \n");
}
if (msg.length >
0) {
alert("You have errors on Question Number: " + group + "\n\n" + msg.join("\n"));
return false;
} else {
return true;
}
}
< /script>
請考慮一些建議:HTTP ://stackoverflow.com/a/14305295/285587 **特別是有關刪除問題並再次詢問的部分** –
你可以爲此做一個phpFiddle嗎? – ATOzTOA