删除输入字段中的属性

时间:2012-09-24 02:22:42

标签: javascript input attributes field

我想删除此属性

class="validate[custom[card]] text-input"
当取消选择包含值“CreditCard”的无线电时,在我的输入字段“card”上

。这是我的收音机盒的脚本:

<script>
$(document).ready(function() {
    $("input[name$='sel']").click(function() {
        var test = $(this).val();

        $("div.desc").hide();
        $("#sel" + test).show();
    });
});
</script>

和输入字段

<table><tr><td>

<p> Credit/Debit Card<lable  style="margin-right:1px;"></lable><input
type="radio" name="sel" id="sel"  value="CreditCard"
class="validate[required] radio-input" /> </p> 


<p> Paypal<input type="radio" id="sel"  name="sel" value="Paypal"   />
</p>


<p> Wire Transfer<input type="radio" id="sel"  name="sel"
value="WireTransfer"  /> </p>

<!====================================================================================> 
</td<td>

<!====================================================================================> 
<div id="selCreditCard" class="desc"> <label for="card"><strong>Card
Number<font color=red size=3> *</font></strong></label>
        <input name="card"   type="text"  id="card" value=""  style="width:85px;" class="validate[custom[card]] text-input" />
</div>
<!====================================================================================> 
<div id="selPaypal" class="desc" style="display:
none;margin-left:20px;margin-top:1px;margin-bottom:1px;"> paypal
</div>
<!====================================================================================> 
<div id="selWireTransfer" class="desc" style="display:
none;margin-left:20px;margin-top:0px;margin-bottom:-5px;"> wired
</div>
<!====================================================================================>
</td></tr></table>

当用户取消选择收音机时,将返回该属性。

4 个答案:

答案 0 :(得分:0)

您似乎正在使用jQuery。您想要删除class属性。

在jquery中有removeClass()方法。

所以,你会这样做:

$("input[name$='sel']").removeClass("validate text-input");

注意: * 验证[自定义[卡片]] *是一个非常奇怪的类名。我怀疑它不是一个有效的名字。

答案 1 :(得分:0)

要使用jQuery删除属性,您可以使用removeAttr(attrName)方法。 要删除特定课程,您可以使用removeClass(className)

发布了jquery示例,因为看起来你正在使用jquery。

$("#input").removeAttr("class") // removes the entire attr (all classes/values)
$("#input").removeClass("myClass") // removes just the class called myClass

答案 2 :(得分:0)

这样的事情会起作用:

    var radio_select="";
        $(document).ready(function() {
        if(radio_select!="")
        {
        previous_radio_select_id=radio_select_id;
        if(radio_select=="CreditCard")
        {
        $('.validate[custom[card]] .text-input').removeClass('validate[custom[card]] text-input');
        }
        }
        radio_select=$('form input[type=radio]:checked').val();
radio_select_id=$('form input[type=radio]:checked').attr('id');
        });

答案 3 :(得分:0)

确定解决了我的问题

我用过

<script>
$(document).ready(function() {
    $("input[name$='sel']").click(function() {
        var test = $(this).val();

        $("div.desc").hide();
        $("#sel" + test).show();

     if(test != "CreditCard"){
         $("#card").prop('class','')
         }
     else{
              $("#card").prop('class','validate[custom[card]] text-input')
     }  
    });
});
</script>