0

我有一个在 xajax 中实现分页的页面。每行有 3 列用于用户可以选择的单选按钮(请参阅随附的示例布局以了解)。然后当我从第 1 页选择并移动到第 2 页时,应该保留该值。如果我回到第 1 页,我可以看到我所做的选择。 在此处输入图像描述

我有一个代码可以处理从第 1 页到另一页的值选择。

$('.pagination_wrapper').live('click', function(){                      
            $(document).ready(function(){
                var my_option_1 $('#sel_option_1_val').val();
                var my_option_2= $('#sel_option_2_val').val();  
                var my_option_3= $('#sel_option_3_val').val();              
                $('[type="radio"][name="sel_option_1_val_option"][value="'+my_option_1+'"]').attr('checked','checked');
                $('[type="radio"][name="sel_option_2_val_option"][value="'+my_option_2+'"]').attr('checked','checked');
                $('[type="radio"][name="sel_option_3_val_option"][value="'+my_option_3+'"]').attr('checked','checked');             
            });
        }); 

现在我的问题是,当我从第 1 页移动到另一个单选按钮时,即使它在表列表中也没有被选中,因为 xajax 请求尚未完成,但 jquery 已经执行了选择。在函数中添加警报将使其正常工作,因为 dom 已经加载并且在执行此部分之前 $('[type="radio"][name="sel_option_1_val_option"][value="'+my_option_1+'"] ').attr('checked','checked');

这是带有警报的代码:

$('.pagination_wrapper').live('click', function(){                      
            $(document).ready(function(){
                var my_option_1 $('#sel_option_1_val').val();
                var my_option_2= $('#sel_option_2_val').val();  
                var my_option_3= $('#sel_option_3_val').val();  
alert('test');              
                $('[type="radio"][name="sel_option_1_val_option"][value="'+my_option_1+'"]').attr('checked','checked');
                $('[type="radio"][name="sel_option_2_val_option"][value="'+my_option_2+'"]').attr('checked','checked');
                $('[type="radio"][name="sel_option_3_val_option"][value="'+my_option_3+'"]').attr('checked','checked');             
            });
        }); 

关于我需要做什么以便只有在 xajax 请求完成后才会执行单选按钮的选择的任何想法?我试过 setTimeout(), jquery.load 但它仍然不能工作。

4

1 回答 1

0

我能够自己修复它。将我的 xajax 请求配置为同步。

于 2013-01-11T09:02:56.437 回答