如何在jquery中传递变量

时间:2011-06-03 23:35:11

标签: php jquery

我刚开始使用jQuery。我喜欢它如何使功能变得简单。但是因为我对使用Javascript非常新,所以我一直在使用一个函数来阻止路障。

我试图将几个函数绑定在一起,但我不确定我是否按正确的顺序执行此操作。我想要它做的是从选择器href='#from=xxxxx&to=xxxxx'获取一个变量,xxxxx是一个使用PHP从数据库打印出来的值。

然后创建一个DOM窗口以显示表单并将这些值插入到隐藏的输入字段中。我一直试图找出一种方法将这些变量从链接传递给表单。

这是我的剧本:

<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
<script src="http://swip.codylindley.com/jquery.DOMWindow.js"></script>
</head>
<body>
<div id="msgBox" style="display:none"></div>
<?php   $from="0";  $to="0";
for ($x=1; $x<=4; $x++){ $from++; $to++;    ?>
<a href="#from=<?php echo $from;?>&to=<?php echo $to;?>" class="foo">user<?php echo $x;?></a><br>
<?php } ?>
<script type="text/javascript">
       $("#msgBox").append("<form id='myForm' method='post' action='index.php'><div style='border:1px solid #cc0; width:300px;'><input type='hidden' value='<?php echo $from;?>'><input type='hidden' value='<?php echo $to;?>'>subject:<input type='text' name='subject'><br>message:<textarea class='mbox' name='msg'></textarea><br><input type='submit' value='submit'></div></form>");
        $('.foo').click(function(){
            $.openDOMWindow({
                windowSourceID:'#msgBox',
                height:135,
                width:300,
                overlay:0,
                positionType:'anchoredSingleWindow',
                windowBGColor:'#f9f5f5',
                anchoredSelector:'.foo',
                positionLeft:200,
                positionTop:150
            });
                  $("#msgBox").trigger();
            return false;
     });
</script></body></html>

1 个答案:

答案 0 :(得分:0)

在每个链接上的click事件的处理程序中,您可以获得对目标链接的引用,并从href属性中提取值,然后在表单中设置隐藏字段的值。

$('.foo').click(function() {

var href = $(this).attr('href'); // will contain the string "#from=0&to=0"

var from,to = ... // extarct from string by splitting by & or using url parse library

$('#msgBox').find("input[name='from']").val(from);
$('#msgBox').find("input[name='to']").val(to);

// rest of code...

});