我正在尝试完成我的网页的购物车,并且遇到了最后一个问题。我的'加入购物车'按钮旁边有一个文本框,需要在完成购买之前输入特定的硬件密钥(指纹)。我需要对其进行设置,以便最终用户无法点击“添加到购物车”,直到该字段被验证。如果jquery验证失败,请禁用表单“操作”
我已成功设置验证,使文本框需要,只允许特定的字符串,但我似乎无法弄清楚如何动态'禁用'窗体操作,直到文本框成功验证。
这里是我的jQuery:
<script>
$(document).ready(function() {
$.validator.addMethod("os0", function(value) {
return /^(([a-fA-F0-9]{4,4})+\-([a-fA-F0-9]{4,4}))$/.test(value);
}, "Invalid Fingerprint.");
$("#myFingerprint").validate({
rules: {
os0: "required os0",
},
});
});
</script>
下面是相应的HTML:(表单代码复制&从我们的电子商务提供商粘贴)
<td>
<form id="myFingerprint" action="https://www.blahblahblah.com/ecom/gb.php?c=cart&i=770678&cl=122992&ejc=2" target="ej_ejc" method="POST" accept-charset="UTF-8">
<input type="hidden" name="on0" value="Fingerprint"/>
Fingerprint:<br/>
<input type="text" id="os0" name="os0" maxlength="9"/>
<input type="image" src="http://www.blahblahblah.com/add_to_cart.gif" border="0" alt="Add to Cart" class="ec_ejc_thkbx" onClick="javascript:return EJEJC_lc(parent);"/>
</form>
</td>
我对这些简单的问题表示歉意。我仍然是JavaScript/jquery的新手。 – GetAwesome 2010-07-08 16:59:02
您的表单具有'target'属性,这会导致它在内部名称为“ej_ejc”的新选项卡中打开。如果你真的想在那里,你应该只有这样。此外,在SO上,当答案回答你的问题时,一定要点击它旁边的复选标记,以便海报得到赞誉:)谢谢! – Matchu 2010-07-08 17:00:20
肯定会做。感谢您的领导! – GetAwesome 2010-07-08 17:01:41