的提交後我有一個表格關閉窗口形式
<form name="thumbnail" action="<?php echo $_SERVER["PHP_SELF"];?>" method="post">
<input type="hidden" name="x1" value="" id="x1" />
<input type="hidden" name="y1" value="" id="y1" />
<input type="hidden" name="x2" value="" id="x2" />
<input type="hidden" name="y2" value="" id="y2" />
<input type="hidden" name="w" value="" id="w" />
<input type="hidden" name="h" value="" id="h" />
<input type="submit" name="upload_thumbnail" value="Save Image" id="save_thumb"/>
<?php $_SESSION['image1'] = $thumb_image_name.$_SESSION['user_file_ext'];?>
</form>
我想完成這個功能
$(document).ready(function() {
$('#save_thumb').click(function() {
var x1 = $('#x1').val();
var y1 = $('#y1').val();
var x2 = $('#x2').val();
var y2 = $('#y2').val();
var w = $('#w').val();
var h = $('#h').val();
if(x1=="" || y1=="" || x2=="" || y2=="" || w=="" || h==""){
alert("Please Select Area to Crop");
}else{
return true;
}
});
});
問題是後關閉此表,如果我把window.close()的;在返回true之前; 窗口關閉,但窗體不提交,如果我把它返回true;那麼窗口將不會關閉。
這不是工作
$("thumbnail").submit(function() {
$.post($(this).attr('action'), $(this).serializeArray());
window.close();
});
這也不能正常工作:
function closeSelf(){
document.forms['thumbnail'].submit();
window.close();
}
<input type="submit" name="upload_thumbnail" value="Save Image" id="save_thumb" onclick="closeSelf();"/>
表單提交需要轉到另一個頁面,因此它需要提交頁面。它後面的代碼將不會運行。所以你需要提交後的下一頁上的代碼來調用close。 – epascarello