파일을 업로드하려고합니다. 이 코드jquery가 양식 제출을 방지합니다.
$(document).ready(function() {
$('#form_model_upload').submit(function (e) {
var isvalid = true;
var val = $('#model').val();
if (!val || val == "") {
$('#err_model').html('please select an image');
isvalid = false;
} else {
var ext = $('#model').val().split('.').pop().toLowerCase();
if ($.inArray(ext, ['gif', 'jpg', 'jpeg']) == -1) {
$('#err_model').html('invalid file extension').show();
isvalid = false;
}
}
return isvalid;
});
});
여기
내 HTML 코드
<form action="<?php echo $editFormAction; ?>" method="POST" name="form_model_upload">
<input type="hidden" name="vendor_id" value="<?php echo $_SESSION['vendor_id']?>" /><tr><td></td><td><span id="err_model"></span></td></tr>
<tr><td>Model:</td><td><input type="file" name="model" id="model"/></td>
</tr>
<tr><td>Description:</td><td><textarea rows="5" cols="30" name="description" id="description" ></textarea></td></tr>
<tr><td>Category:</td><td><select name="category_model" id="category_model">
<?php $categories=$doc->getElementsByTagName("category");
foreach($categories as $category)
{//$category_node=$category->getElementsByTagName("cat_val");
$category_value=$category->nodeValue;
echo '<option value="'.$category_value.'">'.$category_value.'</option>';
}?>
</select> </td></tr>
<tr><td></td><td><input type="submit" name="upload_submit" id="upload_submit" value="upload" /></td></tr>
<input type="hidden" name="MM_insert" value="upload_model" />
<input type="hidden" name="MM_insert" value="form_model_upload" />
</form>
가 있지만 검증이 실패하는 경우에도 양식을 제출을 사용하여 검증? 유효성 검사 실패시 양식 제출을 방지하고 싶습니다.
e.preventDefault '()'또는 '거짓 반환;'또는'이 isvalid 복귀시킨 후, 상기 isvalid = 거짓'대신에 ''. – Jai
잘못 제출하면 예제를 보여줄 수 있습니까? HTML을 게시 할 수 있습니까? – Alexander
코드가 작동합니다. http://jsfiddle.net/9z69G/ –