malaki.davud
شنبه 26 آذر 1390, 12:02 عصر
سلام به دوستان من این مقاله رو از این ادرس http://hamkelasy.com/files/javascript_tips_for%20asp.pdf
گرفتم
تولید یک watermark textbox
هدف اصلی از یک watermark (متن سایه دار) فراهم کردن اطلاعاتی برای کاربر درباره textbox بدون به هم ریختن ظاهر صفحه است. شما ممکن است که موارد زیادی از این قبیل را در search textboxes ، در سایت ها دیده باشید. زمانی که یک watermarked textbox خالی باشد ، آن عبارتی را به کاربر نشان می دهد و زمانی که کاربر متنی را در textbox وارد می کند ، آن عبارت ناپدید می شود. زمانی که کابر این نوع از textbox ها را خالی رها می کند ، آن عبارت دوباره برخواهد گشت.
شما می توانید به راحتی این رفتارها را به یک textbox با استفاده از اضافه کردن دو رویداد onfocuse و onblur ، اضافه کنید. در رویداد focus باید مقدار داخل textbox را اگر با مقدار متن watermark ، یکی باشد پاک می کند و در رویداد blur ، اگر مقدار داخل textbox خالی باشد ، مقدار داخل آن باید با مقدار watermark پر شود.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="waterMark.aspx.cs" Inherits="waterMark" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
<script language="javascript" type="text/javascript">
function WatermarkFocus(txtElem, strWatermark) {
if (txtElem.value == strWatermark) txtElem.value = '';
}
function WatermarkBlur(txtElem, strWatermark) {
if (txtElem.value == '') txtElem.value = strWatermark;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<br />
<asp:TextBox ID="txtWatermark" runat="server"></asp:TextBox>
<br />
<br />
<asp:Button ID="Button1" runat="server" Text="Button" /></div>
</form>
</body>
</html>
protected void Page_Load(object sender, EventArgs e)
{
string strWatermark = "Search Karamasoft.com";
txtWatermark.Text = strWatermark;
txtWatermark.Attributes.Add("onfocus", "WatermarkFocus(this, '" + strWatermark + "');");
txtWatermark.Attributes.Add("onblur", "WatermarkBlur(this, '" +
strWatermark + "');");
}
اما وقتی مثلا بر روی دگمه کد زیر رو می نویسیم تا متن داخل txtwatermark رو که مثلا داخلش hello رو تایپ کردیم ، داخل یک متغییر string بریزه باز دوباره همون Search Karamasoft.com رو داخلش میریزه
protected void Button1_Click(object sender, EventArgs e)
{
string test = txtWatermark.Text;
}
کسی اگه مشکلشو می دونه بگه
گرفتم
تولید یک watermark textbox
هدف اصلی از یک watermark (متن سایه دار) فراهم کردن اطلاعاتی برای کاربر درباره textbox بدون به هم ریختن ظاهر صفحه است. شما ممکن است که موارد زیادی از این قبیل را در search textboxes ، در سایت ها دیده باشید. زمانی که یک watermarked textbox خالی باشد ، آن عبارتی را به کاربر نشان می دهد و زمانی که کاربر متنی را در textbox وارد می کند ، آن عبارت ناپدید می شود. زمانی که کابر این نوع از textbox ها را خالی رها می کند ، آن عبارت دوباره برخواهد گشت.
شما می توانید به راحتی این رفتارها را به یک textbox با استفاده از اضافه کردن دو رویداد onfocuse و onblur ، اضافه کنید. در رویداد focus باید مقدار داخل textbox را اگر با مقدار متن watermark ، یکی باشد پاک می کند و در رویداد blur ، اگر مقدار داخل textbox خالی باشد ، مقدار داخل آن باید با مقدار watermark پر شود.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="waterMark.aspx.cs" Inherits="waterMark" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
<script language="javascript" type="text/javascript">
function WatermarkFocus(txtElem, strWatermark) {
if (txtElem.value == strWatermark) txtElem.value = '';
}
function WatermarkBlur(txtElem, strWatermark) {
if (txtElem.value == '') txtElem.value = strWatermark;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<br />
<asp:TextBox ID="txtWatermark" runat="server"></asp:TextBox>
<br />
<br />
<asp:Button ID="Button1" runat="server" Text="Button" /></div>
</form>
</body>
</html>
protected void Page_Load(object sender, EventArgs e)
{
string strWatermark = "Search Karamasoft.com";
txtWatermark.Text = strWatermark;
txtWatermark.Attributes.Add("onfocus", "WatermarkFocus(this, '" + strWatermark + "');");
txtWatermark.Attributes.Add("onblur", "WatermarkBlur(this, '" +
strWatermark + "');");
}
اما وقتی مثلا بر روی دگمه کد زیر رو می نویسیم تا متن داخل txtwatermark رو که مثلا داخلش hello رو تایپ کردیم ، داخل یک متغییر string بریزه باز دوباره همون Search Karamasoft.com رو داخلش میریزه
protected void Button1_Click(object sender, EventArgs e)
{
string test = txtWatermark.Text;
}
کسی اگه مشکلشو می دونه بگه