dongyou6909 2010-06-15 18:10
浏览 53
已采纳

将javascript表单变量传递给jQuery函数不起作用

I am trying to pass some JavaScript variables that I have assigned to form variables into a query string used by a jQuery plug in called fancybox. If I hard code in the string that I want lightbox works great, however I need it to pass some form values in there to make it work as desire.

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

            var item = document.itemFinder.item;
            var zip = document.itemFinder.zip;
            var radius = document.itemFinder.radius;
            var dataString = "item=" + item + "&zip=" + zip + "&radius=" + radius;
            $("#various3").fancybox({
                    ajax : { type   : "POST", data  : dataString},
                    'scrolling'         : 'auto',
                    'overlayOpacity'    : '0'           
                    }               
                );
    });
    </script>

What am I doing wrong?

  • 写回答

1条回答 默认 最新

  • dreamice2013 2010-06-15 18:13
    关注

    The data parameter expect an object. You're passing a string. Change your call like so:

    ajax : { type: "POST", data  : {'item': item, 'zip': zip, 'radius': radius}} 
    

    That should get it to properly serialize your values for you.

    -- Updated --

    <script type="text/javascript">
      $(document).ready(function(){
         $('#someElement').change(function () {
            var item = document.itemFinder.item;
            var zip = document.itemFinder.zip;
            var radius = document.itemFinder.radius;
            var dataString = "item=" + item + "&zip=" + zip + "&radius=" + radius;
            $("#various3").fancybox({
                    ajax : { type   : "POST", data  : dataString},
                    'scrolling'         : 'auto',
                    'overlayOpacity'    : '0'           
                    }               
                );
      });
    });
    </script>
    

    In my example I'm not sure which event you actually want to bind to (your call), and I'm not sure what other elements are available, but hopefully that makes sense anyway. Thanks,

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?