我有一个付款表单,当我点击网上银行时,所有输入字段都被禁用,而是显示一些图像。这是我做过的小提琴http://jsfiddle.net/f8Fd3/4/否我无法使用他们的类ID隐藏输入文本字段。
这是js
function cc()
{
$('#cards.credit-card').removeClass("visa mastercard").addClass("visa");
}
function dc()
{
$('#cards.credit-card').removeClass("visa mastercard").addClass("mastercard");
}
function ib()
{
}
请检查小提琴以获得清晰的图片
答案 0 :(得分:1)
您想要选择所有input
& select
个元素,并将其属性disabled
设置为true
:
$('#cards input, #cards select').prop('disabled', true);
的 Fiddle 强>
答案 1 :(得分:1)
The syntax class="class=tokenex_data full gr-input" is incorrect.
Instead use, class="tokenex_data full gr-input"
Then use :
`function ib()
{
$(".tokenex_data").hide();
$(".monthgr-input").hide();
}
`
答案 2 :(得分:1)
这是因为,默认情况下,当点击“表单”中的“按钮”标签时,将提交“表单”。
它没有重定向到其他两个,因为HTML5表单验证阻止了表单的提交。 (这就是您点击Visa / Mastercard时会看到错误消息的原因)
如果你坚持在dom中绑定事件......你可以将事件对象传递给处理程序:
<button onclick="javascript:ib(event)" class="btn btn-1 btn-1c">Internet Banking</button>
并在您的函数中:
function ib(event) {
event.preventDefault();
}
你也可能想对其他两个处理程序做同样的事情。
因此将阻止默认的提交操作。
并禁用所有文本字段:
$('#cards input[type=text]').prop('disabled', true);
隐藏它们:
$('#cards input[type=text]').hide();
修改强>
顺便说一下。你不必使用像$('#cards.credit-card')这样的选择器,'id'在DOM中应该是唯一的,只需使用$('#cards')就可以获得相同的元素。