非表示の入力で正しい値を取得できません。
以下に、ユーザーがボタンをクリックするたびにテーブルに追加されるフォームがあります。
var $fileImage = $("<form action='imageupload.php' method='post' enctype='multipart/form-data' target='upload_target_image' onsubmit='return imageClickHandler(this);' class='imageuploadform' >" +
"<p class='imagef1_upload_form' align='center'><br/><span class='msg'></span><label>" +
"Image File: <input name='fileImage' type='file' class='fileImage' /></label><br/><br/><label class='imagelbl'>" +
"<input type='submit' name='submitImageBtn' class='sbtnimage' value='Upload' /></label>" +
"<input type='hidden' class='numimage' name='numimage' value='" + GetFormImageCount + "' /></p>" +
"<iframe class='upload_target_image' name='upload_target_image' src='#' style='width:0px;height:0px;border:0px;solid;#fff;'></iframe></form>");
$image.append($fileImage);
これは私が受け取っている問題であり、フォームの非表示の入力を処理します。
<input type='hidden' class='numimage' name='numimage' value='" + GetFormImageCount + "' />
行 1 に 1 つのフォーム (非表示入力の値は 1) と行 2 に 1 つのフォーム (非表示入力の値は 2) の 2 つのフォームをテーブルに追加するとします。
問題は、どちらの形式にも価値がないことです。両方のフォームの値はまだ 0 です。正しいフォームに正しい値を含めるには、以下のコードに何を含める必要がありますか?
以下はコードです:
...//form code from top goes here
//CODE BELOW INCREMENTS A QUESTION NUMBER AND INCREMENTS THE HIDDEN VALUE FOR EACH ROW ADDED
$('.num_questions').each( function() {
var $this = $(this);
var $questionNumber = $("<input type='hidden' class='num_questionsRow'>").attr('name',$this.attr('name')+"[]")
.attr('value',$this.val());
$qid.append($questionNumber);
});
//BELOW IS THE FUNCTION WHICH SHOULD INSERT THE VALUE FOR THE HIDDEN INPUT FOR EACH FORM
function GetFormImageCount(){
var frm = $('.imageuploadform');
if(frm[0] != undefined)
{
if(length in frm )
{
return frm.length;
}
return 1;
}
return 0;
}