js怎么获取文本框内容
<scriptlanguage="JavaScript">window.onload=function(){varkeyword="******";//关键字varr=d...
<script language="JavaScript">
window.onload=function()
{
var keyword="******";//关键字
var r=document.body.createTextRange();
var s='<font style="background-color: #FFFF00;">'+keyword+'</font>';
while(r.findText(keyword)){
for(var o=r.parentElement();o&&o.tagName!="A";o=o.parentElement);
if(!o)try{
r.pasteHTML(s);
}catch(e){}
r.collapse(false);
}
}
</script>
<form>
<input name='keyword' type='text' value="******">
</form>
我的意思就是输入******的时候 keyword="******"也跟着变,同时js后面的代码就跟着执行了。
如果实在不行,后面加一个“提交”按钮也行。
我想让他执行之后还有效果怎么办呢
就是用户输入一个词,执行一次,换一个词,在执行一次
修改onLoad吗? 展开
window.onload=function()
{
var keyword="******";//关键字
var r=document.body.createTextRange();
var s='<font style="background-color: #FFFF00;">'+keyword+'</font>';
while(r.findText(keyword)){
for(var o=r.parentElement();o&&o.tagName!="A";o=o.parentElement);
if(!o)try{
r.pasteHTML(s);
}catch(e){}
r.collapse(false);
}
}
</script>
<form>
<input name='keyword' type='text' value="******">
</form>
我的意思就是输入******的时候 keyword="******"也跟着变,同时js后面的代码就跟着执行了。
如果实在不行,后面加一个“提交”按钮也行。
我想让他执行之后还有效果怎么办呢
就是用户输入一个词,执行一次,换一个词,在执行一次
修改onLoad吗? 展开
4个回答
展开全部
var keyword="******";//关键字
这样写就可以:
var keyword=document.forms[0].keyword.value;//关键字
但是,你的这样语句就是页面加载的时候执行一次,因为你写在onLoad里面的,那么当页面加载以后你修改keyword的值是没有效果的。
要能够多次执行,应该这样:
<html><head>
<script language="JavaScript">
function func()
{
var keyword=document.forms[0].keyword.value;//关键字
var r=document.body.createTextRange();
var s='<font style="background-color: #FFFF00;">'+keyword+'</font>';
while(r.findText(keyword)){
for(var o=r.parentElement();o&&o.tagName!="A";o=o.parentElement);
if(!o)try{
r.pasteHTML(s);
}catch(e){}
r.collapse(false);
}
return false;
}
</script>
</head><body>
<form onSubmit="return func();">
<input name='keyword' type='text' value="******">
<input type=submit value='Search'>
</form>
</body></html>
这样写就可以:
var keyword=document.forms[0].keyword.value;//关键字
但是,你的这样语句就是页面加载的时候执行一次,因为你写在onLoad里面的,那么当页面加载以后你修改keyword的值是没有效果的。
要能够多次执行,应该这样:
<html><head>
<script language="JavaScript">
function func()
{
var keyword=document.forms[0].keyword.value;//关键字
var r=document.body.createTextRange();
var s='<font style="background-color: #FFFF00;">'+keyword+'</font>';
while(r.findText(keyword)){
for(var o=r.parentElement();o&&o.tagName!="A";o=o.parentElement);
if(!o)try{
r.pasteHTML(s);
}catch(e){}
r.collapse(false);
}
return false;
}
</script>
</head><body>
<form onSubmit="return func();">
<input name='keyword' type='text' value="******">
<input type=submit value='Search'>
</form>
</body></html>
展开全部
用js的value方法就可以了。下面是代码,仅供参考:
<body>
<input type='text' id='inp' />
<input type='button' id='btn' value='click' />
</body>
<script>
var oInp = document.getElementById('inp');
var oBtn = document.getElementById('btn');
oBtn.onclick=function(){
alert(oInp.value); //这里就可以获取文本框里的值了。
};
</script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.GetDlgItem获取文本编辑框的指针来获取内容
2.使用
GetDlgItemText
函数获取文本框的内容。
3.使用
GetDlgItemInt来直接获取数值内容。
4.第四种方法在类的定义
变量
来关联
控件
5.第五种使用SendMessage获取编辑框内容。
1.GetDlgItem获取文本编辑框的指针来获取内容
先使用
GetDlgItem(编辑框的ID)获取编辑框的指针。再指向编辑框的GetWindowText函数将获取内容保存至指定的字符数组里。
下面是代码。
int
num1,num2,num3;
char
char1[10],char2[10],char3[10];
GetDlgItem(IDC_EDIT1)->GetWindowText(char1,10);
GetDlgItem(IDC_EDIT2)->GetWindowText(char2,10);
num1=atoi(char1);
num2=atoi(char2);
num3=num2+num1;
itoa(num3,char3,10);
GetDlgItem(IDC_EDIT3)->SetWindowText(char3);
2.使用
GetDlgItemText
函数获取文本框的内容。
GetDlgItemText
函数
从代码分析上来看,GetDlgItemText
函数是第一种方法的简写版。
int
num1,num2,num3;
char
char1[10],char2[10],char3[10];
GetDlgItemText(IDC_EDIT1,char1,10);
GetDlgItemText(IDC_EDIT2,char2,10);
num1=atoi(char1);
num2=atoi(char2);
num3=num2+num1;
itoa(num3,char3,10);
SetDlgItemText(IDC_EDIT3,char3);
3.,使用
GetDlgItemInt来直接获取数值内容。
第二个例子是获取的文本内容,转成数值内容的话,就得使用atoi函数比较麻烦
就可以使用GetDlgItemInt来直接获取数值内容。
代码如下
int
num1,num2,num3;
char
char1[10],char2[10],char3[10];
num1=GetDlgItemInt(IDC_EDIT1);
num2=GetDlgItemInt(IDC_EDIT2);
num3=num1+num2;
SetDlgItemInt(IDC_EDIT3,num3);
4.第四种方法在类的定义
变量
来关联
控件
单击
查看—建立类向导—Member
Variables选项卡
单击对应的Control
Ids的名称
在Member
variable
name填入
一个变量名即可。
如果想直接取值的话
,在category中选择Value,那么这个变量名就是对应的值
UpdateData();
m_edit3=m_edit1+m_edit2;
UpdateData(false);
可以选择数据类型,来定义变量的数据类型。
如果是文本型的。
就在Category中选择
control,那么,这个变量名,就对应这个控件。就利用这个变量名进行操作。
int
num1,num2,num3;
char
char1[10],char2[10],char3[10];
m_the_edit1.GetWindowText(char1,10);
m_the_edit2.GetWindowText(char2,10);
num1=atoi(char1);
num2=atoi(char2);
num3=num1+num2;
itoa(num3,char3,10);
m_the_edit3.SetWindowText(char3);
5.第五种使用SendMessage获取编辑框内容。
使用发送消息的方式。
(1)。采用全局类的SendMessage来发送获取消息内容的。
注意
第一个参数是目标窗口控件的句柄,第二个参数是固定的表示符,第三个是第四个字符变量的大小,第四个是字符变量数组的指针。
::SendMessage(GetDlgItem(IDC_EDIT1)->m_hWnd,WM_GETTEXT,10,(LPARAM)char1);
也可以这要获取句柄。
::SendMessage(m_the_edit1.m_hWnd,WM_GETTEXT,10,(LPARAM)char1);
(2)。在窗口类中也有SendMessage函数。
GetDlgItem(IDC_EDIT1)->SendMessage(WM_GETTEXT,10,(LPARAM)char1);
或者这样
m_the_edit1.SendMessage(WM_GETTEXT,10,(LPARAM)char1);
也有省事的SendDlgItemMessage
函数,可以直接发送获取文本的消息指指定控件的ID。
SendDlgItemMessage(IDC_EDIT2,WM_GETTEXT,(LPARAM)char2);
2.使用
GetDlgItemText
函数获取文本框的内容。
3.使用
GetDlgItemInt来直接获取数值内容。
4.第四种方法在类的定义
变量
来关联
控件
5.第五种使用SendMessage获取编辑框内容。
1.GetDlgItem获取文本编辑框的指针来获取内容
先使用
GetDlgItem(编辑框的ID)获取编辑框的指针。再指向编辑框的GetWindowText函数将获取内容保存至指定的字符数组里。
下面是代码。
int
num1,num2,num3;
char
char1[10],char2[10],char3[10];
GetDlgItem(IDC_EDIT1)->GetWindowText(char1,10);
GetDlgItem(IDC_EDIT2)->GetWindowText(char2,10);
num1=atoi(char1);
num2=atoi(char2);
num3=num2+num1;
itoa(num3,char3,10);
GetDlgItem(IDC_EDIT3)->SetWindowText(char3);
2.使用
GetDlgItemText
函数获取文本框的内容。
GetDlgItemText
函数
从代码分析上来看,GetDlgItemText
函数是第一种方法的简写版。
int
num1,num2,num3;
char
char1[10],char2[10],char3[10];
GetDlgItemText(IDC_EDIT1,char1,10);
GetDlgItemText(IDC_EDIT2,char2,10);
num1=atoi(char1);
num2=atoi(char2);
num3=num2+num1;
itoa(num3,char3,10);
SetDlgItemText(IDC_EDIT3,char3);
3.,使用
GetDlgItemInt来直接获取数值内容。
第二个例子是获取的文本内容,转成数值内容的话,就得使用atoi函数比较麻烦
就可以使用GetDlgItemInt来直接获取数值内容。
代码如下
int
num1,num2,num3;
char
char1[10],char2[10],char3[10];
num1=GetDlgItemInt(IDC_EDIT1);
num2=GetDlgItemInt(IDC_EDIT2);
num3=num1+num2;
SetDlgItemInt(IDC_EDIT3,num3);
4.第四种方法在类的定义
变量
来关联
控件
单击
查看—建立类向导—Member
Variables选项卡
单击对应的Control
Ids的名称
在Member
variable
name填入
一个变量名即可。
如果想直接取值的话
,在category中选择Value,那么这个变量名就是对应的值
UpdateData();
m_edit3=m_edit1+m_edit2;
UpdateData(false);
可以选择数据类型,来定义变量的数据类型。
如果是文本型的。
就在Category中选择
control,那么,这个变量名,就对应这个控件。就利用这个变量名进行操作。
int
num1,num2,num3;
char
char1[10],char2[10],char3[10];
m_the_edit1.GetWindowText(char1,10);
m_the_edit2.GetWindowText(char2,10);
num1=atoi(char1);
num2=atoi(char2);
num3=num1+num2;
itoa(num3,char3,10);
m_the_edit3.SetWindowText(char3);
5.第五种使用SendMessage获取编辑框内容。
使用发送消息的方式。
(1)。采用全局类的SendMessage来发送获取消息内容的。
注意
第一个参数是目标窗口控件的句柄,第二个参数是固定的表示符,第三个是第四个字符变量的大小,第四个是字符变量数组的指针。
::SendMessage(GetDlgItem(IDC_EDIT1)->m_hWnd,WM_GETTEXT,10,(LPARAM)char1);
也可以这要获取句柄。
::SendMessage(m_the_edit1.m_hWnd,WM_GETTEXT,10,(LPARAM)char1);
(2)。在窗口类中也有SendMessage函数。
GetDlgItem(IDC_EDIT1)->SendMessage(WM_GETTEXT,10,(LPARAM)char1);
或者这样
m_the_edit1.SendMessage(WM_GETTEXT,10,(LPARAM)char1);
也有省事的SendDlgItemMessage
函数,可以直接发送获取文本的消息指指定控件的ID。
SendDlgItemMessage(IDC_EDIT2,WM_GETTEXT,(LPARAM)char2);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
(这个文本框不在form里)
提交
提交
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询