0

我正在尝试做到这一点,因此当用户单击收音机时,它会设置一个变量,然后单击第二个收音机并创建第二个变量。

然后我想合并这两个变量并根据创建的变量通过 ajax 加载一些数据。为了测试它,我制作了一个按钮,我可以单击以测试变量是否存在但它没有显示,所以我假设我没有做正确的事情。

我非常感谢您的帮助,我对此很陌生,只是遇到了很多麻烦。

<script type="text/javascript">
  $(function(){
    $("input:radio[name=f_1]").click(function() {
      type = $(this).val();
    });

    $("input:radio[name=f_1a]").click(function() {
      prod = $(this).val();
    });

    var type, prod;
    var JobType = type + prod;
    $("#alertButton").click(function(){
      alert (JobType);
    });
  });
</script>
4

2 回答 2

0

您可以使用以下代码:

$("input:radio").change(function() {

    var selected = $("input:radio:checked");

    if ( selected.length === 2 ) {
        var f = $("input[name='f']:checked").val();
        var z = $("input[name='z']:checked").val();           
        alert('we have values ['+z+f+']');
    }

});

在您的代码中,您在函数范围之外有变量声明,因此您无法获得所需的变量。

于 2012-04-23T15:31:20.323 回答
0

您的变量仅在页面加载时加入(当它们为空时),因为它们不在函数内。

在顶部声明您的变量,并在它们实际具有值时将变量的连接放在 click 函数中,它工作得很好:

$(function(){
    var type="", prod="", JobType="";

    $("input:radio[name=f_1]").click(function() {
        type = $(this).val();
    });

    $("input:radio[name=f_1a]").click(function() {
        prod = $(this).val();
    });


    $("#alertButton").click(function(){
        JobType = type + prod;
        alert (JobType);
    });
});​

如果你给你的变量一个没有的初始值(“”),你可以避免“未定义”的问题。

这是一个小提琴

于 2012-04-23T15:37:19.447 回答