我试图在用户点击收音机时设置变量,然后点击第二个收音机并制作第二个变量。
然后我想合并这两个变量,并根据创建的变量通过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>
答案 0 :(得分: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+']');
}
});
在您的代码中,您在函数范围之外有变量声明,因此您无法获得所需的变量。
答案 1 :(得分: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);
});
});
如果为变量赋予初始值no(“”),则可以避免“未定义”问题。
这是FIDDLE