• پایان فعالیت بخشهای انجمن: امکان ایجاد موضوع یا نوشته جدید برای عموم کاربران غیرفعال شده است

کنترل کاراکتر ورودی

melina

کاربر تازه وارد
تاریخ عضویت
23 مارس 2003
نوشته‌ها
39
لایک‌ها
0
تابع یا برنامه ای رو میخوام که تویtext box ها در asp کنترل کنه که فقط عدد یا فقط متن وارد شه .
 

artin

کاربر تازه وارد
تاریخ عضویت
19 می 2004
نوشته‌ها
2,114
لایک‌ها
2
اگه به صورت آنی می خوای باید از جاوا اسکریپت استفاده کنی و اما اگه می خوای با ای اس پی چک کنی برات یه مثال می زنم

On Error Resume Next
var1=request.form("var1")
var1=CInt(var1)
If Err.number <> 0 Then
Response.Write "you have enterd numeric "
else
Response.Write "you have enterd non numeric "
End If
Err.Clear
 

KgbCia

کاربر تازه وارد
تاریخ عضویت
28 آگوست 2004
نوشته‌ها
201
لایک‌ها
0
سلام
اگه امكان داره كد رو برا VB Script هم بنويسيد.
يه دنيا تشكر
 

melina

کاربر تازه وارد
تاریخ عضویت
23 مارس 2003
نوشته‌ها
39
لایک‌ها
0
من جاوا اسکريپت رو می خوام اگه امکان داره برام بنويسيد
با تشکر
 

artin

کاربر تازه وارد
تاریخ عضویت
19 می 2004
نوشته‌ها
2,114
لایک‌ها
2
برو حالشو ببر البته یه خرده روغنشم زیادتر کردم


کد:
      <SCRIPT language=javascript> 
                   <!--
                      function test(){
                        if(form1.var1.value == ""){
                          alert("Var1 can not be empty please enter some things.");
                           form1.var1.focus();
                           return false;
                        }
                        if (isNaN(form1.var1.value)){
                          alert("Only digital values are allowable.");
                           form1.var1.focus();
                           return false;
                        }
  			document.form1.submit.disabled=true
  			document.form1.submit.value="Processing ..."
                        return true;
                       }
                     //-->
                      </SCRIPT>

  <FORM action=nextpage.asp method=post name=form1 onsubmit="return test(form1)">
 Enter Numeric: <INPUT maxLength=6 name=var1 >  <br> 
<input type=submit name=submit value=Submit>
  </FORM>



دستور به طوره کامل اجرا شد shankimout
 

shankimout

Registered User
تاریخ عضویت
17 می 2004
نوشته‌ها
1,524
لایک‌ها
3
محل سکونت
ساری . . . . . . . . . . . . . . Permanently Bann
ارتين جان اگه ميشه كد هارو درون تگ كد قرار بده كه بهم نريزه
 

melina

کاربر تازه وارد
تاریخ عضویت
23 مارس 2003
نوشته‌ها
39
لایک‌ها
0
مرسي حتما حالشو ميبرم
براي اينكه فقط كاراكتر قبول كنه چي؟در ضمن كاراكترهايي مثل @ ^ و.... رو هم قبول نكنه
 

artin

کاربر تازه وارد
تاریخ عضویت
19 می 2004
نوشته‌ها
2,114
لایک‌ها
2
ما كه نمي دونيم والا تا اونجايي كه مي دونم شما هر ورودي كه به سيستم بدي جزو هيچ يك از انواع متغيرها نباشه حداقل متغيره كاراكتري مي شه
 

melina

کاربر تازه وارد
تاریخ عضویت
23 مارس 2003
نوشته‌ها
39
لایک‌ها
0
منظورم اينه كه عدد قبول نكنه
 

artin

کاربر تازه وارد
تاریخ عضویت
19 می 2004
نوشته‌ها
2,114
لایک‌ها
2
دوسته عزیز
اول بگم این رو طبق اطلاعاته خودم می گم و شاید هم راهه دیگه ای داشته باشه

اگه به این برنامه که اینجا گذاشتم نگاه کنی هر چی ورودی بهش می دی شاید نوعش تاریخ باشه عددی باشه پولی
باشه و .. ولی صد در صد متغیره کاراکتره این برنامه رو واسه این گذاشتم تا منظورمو بفهمی

ولی اگه خیلی و به شدت نیاز داری می شه کاری کرد باید یه برنامه نوشت که متغیرو انالیز کنه یعنی با فاکنکشنه mid تک تک کاراکتر هاشو در بیاری و ببینی عدده یا نه و اگر خواستی بگو می خوای چه کاراکترهیرو قبول کنه و چیارو نه

البته اینو اول بگو با ای اس پی می خوای یا جاوا اسکریپت ؟؟؟


کد:
<%
' Takes a variable containing some data and attempts to convert
' it to the requested type.  If it succeeds it returns the
' resulting value otherwise it returns "N/A".
Function ConvertToType(vInput, strType)
	' Set error trapping on so I can catch failures!
	On Error Resume Next

	Dim vTemp ' As Variant

	' Do the appropriate conversion
	Select Case LCase(strType)
		Case "bool", "boolean"
			vTemp = CBool(vInput)
		Case "byte"
			vTemp = CByte(vInput)
		Case "int", "integer"
			vTemp = CInt(vInput)
		Case "lng", "long"
			vTemp = CLng(vInput)
		Case "sng", "single"
			vTemp = CSng(vInput)
		Case "dbl", "double"
			vTemp = CDbl(vInput)
		Case "cur", "currency"
			vTemp = CCur(vInput)
		Case "date"
			vTemp = CDate(vInput)
		Case "str", "string"
			vTemp = CStr(vInput)
		Case Else
			' If the specified type isn't handled error out.
			Err.Raise 1
	End Select
	
	' If the specified conversion failed set our return
	' value to something we can check for.
	If Err.number <> 0 Then
		vTemp = "N/A"
		Err.Clear
	End If
	
	'Response.Write TypeName(vTemp) & "<BR>" & vbCrLf

	' Set return value
	ConvertToType = vTemp
End Function
%>

<%
Dim arrTypes  ' Array to hold our list of the different variable types we'll be trying
Dim strInput  ' The string that holds the text typed into the form
Dim vTempVar  ' Temp variant variable used to cache results from our function call
Dim I         ' Standard loop control variable and array location indicator

' Init out array of the various types
arrTypes = Array("Boolean", "Byte", "Integer", "Long", "Single", "Double", "Currency", "Date", "String")

' If available retrieve value to convert o/w set it to default of 0
If Request.QueryString("strInput").Count = 0 Then
	strInput = 0
Else
	strInput = Request.QueryString("strInput")
End If

' Show the table of results
%>
<TABLE BORDER="1" CELLSPACING="0" CELLPADDING="2">
	<TR BGCOLOR="#CCCCCC">
		<TD>Data Type</TD>
		<TD>Can Be Converted</TD>
		<TD>Value When Converted</TD>
	</TR>
<%
' Loop through our type array attempting conversion to each type
For I = LBound(arrTypes) To UBound(arrTypes)
	' Cache result in a variant variable so I don't have to keep calling the function
	vTempVar = ConvertToType(strInput, arrTypes(I))

	' Display type, conversion status, and resulting value
	%>
	<TR>
		<TD><%= arrTypes(I) %></TD>
		<TD><%= vTempVar <> "N/A" %></TD>
		<TD><%= vTempVar %></TD>
	</TR>
	<%
Next 'I

' Close the table and display the form for people to enter values to convert
%>
</TABLE>

<FORM ACTION="#" METHOD="get">
	<INPUT TYPE="text" NAME="strInput" VALUE="<%= strInput %>">
	<INPUT TYPE="submit" value="Attempt Conversions">
</FORM>
 

melina

کاربر تازه وارد
تاریخ عضویت
23 مارس 2003
نوشته‌ها
39
لایک‌ها
0
برنامه رو با جاوا اسكريپت ميخواهم .
ببخشيد اين اشتباه من بود كه به جاي حروف نوشتم كاراكتر.
ميخواهم همه حروف رو دريافت كنه(براي فيلد نام و نام خانوادگي) يعني فقط حروف فارسي و انگليسي رو قبول كنه.
براي فيلد email كاراكترهايي مثل $ #و... رو دريافت نكنه و بقیه کاراکترهای عددی و غیرعددی رو بگیره
یعنی دو تا تابع میخوام.
خيلي خيلي ممنونم
 

artin

کاربر تازه وارد
تاریخ عضویت
19 می 2004
نوشته‌ها
2,114
لایک‌ها
2
من اونقدر تو جاوا حرفه ای نیستم و نمیتونم برات بنویسم و فکر نمی کنم به همین راحتی با جاوا بشه نوشت
و دوما حالا چه گیریه یارو تو اسمش عدد نزنه ؟ سایتهایه کت و کلفتش گیر نمی دن تا برسه به ..
در مورد اینکه با جاوا ایمیل رو چک کنی برات یه مثال ایجا واسط می زنم امیدوارم کمت کنه


کد:
      <SCRIPT language=javascript> 
                   <!--
                      function test(){
                        if(form1.email.value == ""){
                          alert("E-mail field can not be empty.");
                           form1.email.focus();
                           return false;
                        }
			if ((document.form1.email.value == "") || (document.form1.email.value.length > 0 && (document.form1.email.value.indexOf("@",0) == - 1 || document.form1.email.value.indexOf(".",0) == - 1))) { 
                          alert("Enter your Valid E-mail Address.");
                           form1.email.focus();
                           return false;
                        }
  document.form1.submit.disabled=true
  document.form1.submit.value="Processing ..."
                        return true;
                       }
                     //-->
                      </SCRIPT>

  <FORM action=nextpage.asp method=post name=form1 onsubmit="return test(form1)">
 Enter your e-mail : <INPUT maxLength=40 name=email >  <br> 
<input type=submit name=submit value=Submit>
  </FORM>
 

melina

کاربر تازه وارد
تاریخ عضویت
23 مارس 2003
نوشته‌ها
39
لایک‌ها
0
ممنون
اگه توي asp میدونید برام بنویسید ممنون میشم.خیلی لازم دارم.
 

artin

کاربر تازه وارد
تاریخ عضویت
19 می 2004
نوشته‌ها
2,114
لایک‌ها
2
هر چی که می خوای قبول نکنه رو بنویس
بعد بگو این کارو واسه چی می خوای انجام بدی شاید راهه بهتری بهت پیشنهاد دادم
راستی این دست مزده مبارک یادتون نره
1.gif
 

melina

کاربر تازه وارد
تاریخ عضویت
23 مارس 2003
نوشته‌ها
39
لایک‌ها
0
میخوام که توی فیلد نام و نام خانوادگی ففط مقادیر مجاز وارد بشه.
یعنی فقط حروف فارسی یا انگلیسی و فاصله.
 

artin

کاربر تازه وارد
تاریخ عضویت
19 می 2004
نوشته‌ها
2,114
لایک‌ها
2
من نمی دونم هر چی که می خوای قبول نکنه رو اینجا بنویس
 

melina

کاربر تازه وارد
تاریخ عضویت
23 مارس 2003
نوشته‌ها
39
لایک‌ها
0
اي بابا نوشته بودم كه....
فقط حروف الفباي فارسي و انگليسي و فاصله مجاز هستند.
! @ # $ % ^ × ) ( وآرد نشوند
پیشاپیش مرسی
 

melina

کاربر تازه وارد
تاریخ عضویت
23 مارس 2003
نوشته‌ها
39
لایک‌ها
0
پس چي شد آرتين؟؟؟
يادت رفت جوابمو بدي؟ :(
 

KgbCia

کاربر تازه وارد
تاریخ عضویت
28 آگوست 2004
نوشته‌ها
201
لایک‌ها
0
سلام
ببخشيد ملينا. اين چه جور صحبت كردنه؟ مگه آقاي آرتين وظيفشونه جواب شما رو بدن؟
آقاي آرتين من از طرف ملينا از شما معذرت مي خوام. :blush:
 

artin

کاربر تازه وارد
تاریخ عضویت
19 می 2004
نوشته‌ها
2,114
لایک‌ها
2
KgbCia
سلام و خواهش میکنم
راستی اون سنکرون درست شد ؟

melina
کسی اینجا وظیه نداره برای شما کد بنویسه تنها کاری که اون هم اگه کسی علاقه داشته باشه کمک کردن هست و به اون معنا که شما کار رو انجام بدی و اگه مشکلی داشتی رفع اشکال کنی
 
بالا