使用表单和ajax设置Fancybox的宽度和高度

时间:2012-04-18 17:08:26

标签: jquery ajax fancybox

我有一张表格

<form action="getData.php" method="POST" id="myForm">
<input type="input" size="20" name="myName" />
<input type="submit" value="Login" id="submit" />
</form>

将数据传递给fancybox

<script type="text/javascript">
$(document).ready(function() {

$("#myForm").bind("submit", function() {

    $.ajax({
        type        : "POST",
        width: "500",
        height: "500",
        cache       : false,
        url         : "getData.php",
        data        : $(this).serializeArray(),
        success: function(data) {
            $.fancybox(data);
        }
    });

    return false;
});


});
</script>

然而我似乎无法设置fancybox的大小或类型?

2 个答案:

答案 0 :(得分:2)

布尔和整数值应设置为不带引号。

因此,为了将fancybox type设置为具有特定尺寸的iframe(500x500px框),请调整脚本,如:

$("#myForm").bind("submit", function() {
 $.ajax({
  type: "POST",
  cache: false,
  url: "getData.php",
  data: $(this).serializeArray(),
  success: function(data) {
   $.fancybox(data,{
    'width': 500,
    'height': 500,
    'type': 'iframe',
    'autoScale': false
   }); // fancybox
  } // success
 }); // ajax
 return false;
}); // bind

由于widthheighttype是你的fancybox设置,它们应该进入fancybox功能,而不是 ajax 功能。

另请注意,我们将autoScale设置为false,以确保您获得width/height选项中的尺寸。

答案 1 :(得分:0)

试试这个:

    $.fancybox.resize();