उपयोगकर्ताओं को केवल संख्याओं को टाइप करने और दशमलव विभाजक के रूप में केवल एक बिंदु टाइप करने के लिए प्रतिबंधित करने के लिए इस जावास्क्रिप्ट का उपयोग कर रहा हूं।स्क्रिप्ट में केवल संख्याओं और डॉट को अनुमति दें
<script type="text/javascript">
function fun_AllowOnlyAmountAndDot(txt)
{
if(event.keyCode > 47 && event.keyCode < 58 || event.keyCode == 46)
{
var txtbx=document.getElementById(txt);
var amount = document.getElementById(txt).value;
var present=0;
var count=0;
if(amount.indexOf(".",present)||amount.indexOf(".",present+1));
{
// alert('0');
}
/*if(amount.length==2)
{
if(event.keyCode != 46)
return false;
}*/
do
{
present=amount.indexOf(".",present);
if(present!=-1)
{
count++;
present++;
}
}
while(present!=-1);
if(present==-1 && amount.length==0 && event.keyCode == 46)
{
event.keyCode=0;
//alert("Wrong position of decimal point not allowed !!");
return false;
}
if(count>=1 && event.keyCode == 46)
{
event.keyCode=0;
//alert("Only one decimal point is allowed !!");
return false;
}
if(count==1)
{
var lastdigits=amount.substring(amount.indexOf(".")+1,amount.length);
if(lastdigits.length>=2)
{
//alert("Two decimal places only allowed");
event.keyCode=0;
return false;
}
}
return true;
}
else
{
event.keyCode=0;
//alert("Only Numbers with dot allowed !!");
return false;
}
}
</script>
<td align="right">
<asp:TextBox ID="txtQ1gTarget" runat="server" Width="30px" CssClass="txtbx" MaxLength="6" onkeypress="return fun_AllowOnlyAmountAndDot(this);"></asp:TextBox>
</td>
लेकिन onkeypress (यह) घटना रिटर्न इस जगह
var amount = document.getElementById(txt).value;
क्या मेरी गलती यहाँ है पर है कि समारोह में अपेक्षित त्रुटि आपत्ति?
नकल रोकने के लिए और :( – MobileMon
पेस्ट आप इस कोशिश कर सकते हैं नहीं है: onkeypress = "fun_AllowOnlyAmountAndDot (घटना) वापसी," – elfekz