2013-04-22 59 views
2

我与Twitter的引导按钮的形式如下JQuery的 - 单选按钮CSS不刷新后提交

<label class="control-label span3">Status of the Dispute? </label> 
<div class="controls span7"> 
<label class="inline radio"> 
<input type="radio" id="status" name="status" value="Continue"/> Continue</label> 
<label class="inline radio"> 
<input type="radio" id="status" name="status" value="Resolved"/>Resolved</label> 
<label class="inline radio"> 
<input type="radio" id="status" name="status" value="Referred"/> Referred</label> 
<label for="status" class="error">Please tell us the dispute status</label> 
</div> 
</div> 

一旦提交,形式成功提交该数据并刷新以及除单选按钮的所有其他元素。

我搜索了各种选项,并沿着道具功能。它帮助我解决了内部选择器的问题。用户页面上的CSS样式表仍然保持不变,就像它被选中一样。

$('input[name="status"]').prop('checked', false); 

我也尝试过这种想法

$('input:not(:checked)').parent().removeClass("inline radio"); 

,但它仍然不是全成。

我完全提交的代码如下:

$.validator.setDefaults({ 

    submitHandler: function(form) { 

      $.post('registermyform.php', 
      $("#registermyform").serialize(), 
      function(data) 
      { 
      $('#results').html(data); 
      if (data="yes"){ 
      alert("The new Dispute has been successfully submitted!"); 
       $('#registerDispute')[0].reset(); 

       $('input[name="status"]').prop('checked', false);  

       $('input:checked').parent().removeClass("inline radio"); 

      } 
      else { 
      alert("not submitted!"); 
        } 
      }); 
     } 
}); 

请协助。我想删除单选按钮的CSS,使其不显示,如果它不被检查。

回答

0

您需要通过元素迭代重置他们都:

var $items = $('input[name="status"]'); 
for (var i = 0; i < $items.length; i++) { 
    $($items[i]).prop('checked', false); 
} 
+0

感谢您的答复ricaldo,但其仍然没有工作! prop('checked',false)实际上取消了内部收音机的检查。然而,页面中的CSS并不会丢失。因为当我尝试重新提交单选按钮提交时未经检查! – Rico 2013-04-22 22:14:33

+0

请更新问题以反映您实际寻找的内容。 – ricardohdz 2013-04-22 22:21:39

+0

已更新。希望它现在清除 – Rico 2013-04-23 20:02:34