Javascript don';不显示隐藏表
我有一个问题,我正在努力解决 基本上,我有一个jquery,当你点击“发送”按钮时,它会激活隐藏的表单。作为服务器端和客户端验证的数量和“颜色”以及“大小”(抱歉在图中遗漏了这一点)。我的问题是,如果有人使用开发人员工具,将大小检查为像Javascript don';不显示隐藏表,javascript,php,jquery,Javascript,Php,Jquery,我有一个问题,我正在努力解决 基本上,我有一个jquery,当你点击“发送”按钮时,它会激活隐藏的表单。作为服务器端和客户端验证的数量和“颜色”以及“大小”(抱歉在图中遗漏了这一点)。我的问题是,如果有人使用开发人员工具,将大小检查为像大小10这样愚蠢的东西,然后单击“发送”,隐藏的表单将可见,总价格将是$NAN 隐藏的表单中有什么 隐藏的表单基本上是一个总计,只需向下滑动,向用户显示添加的内容和总价。这使用jQuery发送大小+数量和price*quantity。所以如果你弄乱了尺寸。价格将
大小10
这样愚蠢的东西,然后单击“发送”,隐藏的表单将可见,总价格将是$NAN
隐藏的表单中有什么
隐藏的表单基本上是一个总计,只需向下滑动,向用户显示添加的内容和总价。这使用jQuery发送大小+数量和price*quantity
。所以如果你弄乱了尺寸。价格将上涨为$NAN
我已经设法阻止这从得到发送到购物车页面现在我想停止显示隐藏的形式
激活隐藏表单并添加到购物车的JQUERY
$(document).ready(function(){
$('#selected').hide();
$('#button').click(function(){
var pid = $('#pid').val();
var len = $('#size option:selected').text();
var Qty = $('#Qty').val();
var qty = parseInt($('#Qty').val());
var price = parseFloat($('#pricetag').text().replace(/^\D/, ''), 10) * qty;
price = '\u00A3' + price.toFixed(2);
var category = $('#Category').val();
if (!/^[1-9]\d?$/.test(Qty)){
alert('Quantity should not be below 1 or null');
return false; // validation for quanity
}
else {
$('#sprice').text(price);
$('#scategory').text(cat);
$('#slength').text(len);
$('#selected').slideDown();
}// this activate the hidden form
$.ajax({
url: 'addtocart.php',
type: 'POST',
data: { pid:pid,
length:length,
Qty:Qty,
Category:Category },
success: function(data)
{
}
});
});
});
如果我说不通,请告诉我 只需检查值的正确性即可。这里我们使用的是价格,但它可以是任何你想要的 Javascript:
if (!/^[1-9]\d?$/.test(Qty)){
alert('Quantity should not be below 1 or null');
return false; // validation for quanity
} else {
if( price >100 && price < 0){
//don't do anything
} else {
$('#sprice').text(price);
$('#scategory').text(cat);
$('#slength').text(len);
$('#selected').slideDown();
}
if(!/^[1-9]\d?$/.test(数量)){
警报(“数量不应低于1或为空”);
返回false;//验证数量
}否则{
如果(价格>100&&price<0){
//什么都不要做
}否则{
$(#sprice')。文本(价格);
$(#scategory')。文本(cat);
$('#slength')。文本(len);
$(“#选定”).slideDown();
}
在向下滑动#所选的元素之前,只需做一个if来检查值是否合理。在该链接中,您可以看到我的意思。这里的价格是如何合理的,但如果我要检查000000或0000这一方的值基本上是数据库中没有的值。那么价格将显示为价格:£NAN
@RobSchmuecker请你举个例子好吗?谢谢我不明白这一点…如果用户使用inspector,即使他没有点击按钮,他也可以显示隐藏的表单,我们甚至可以用pid
,长度
等直接向addtocart.php
发送post请求…只要如果你的应用程序是安全的,你不应该介意一个丑陋的NaN显示,因为用户更改了客户端代码。