问题描述
怎样获取一个TextBox控件中的被用户选取了的字符啊?
解决方案
解决方案二:
WebForm???难~~~
解决方案三:
在网上找到如下代码,用了数据库脱机,不知道能用否,另外提到了用存储过程杀死链接进程的办法,可以找找看。rs.Closeconn.Closesetrs=nothingsetconn=nothing'断开数据库链接Setconn=Server.CreateObject("ADODB.Connection")ConnStr="PROVIDER=SQLOLEDB;uid=sa;Password=sa;database=master"'进入master数据库conn.openConnStrsql="alterdatabasemydbsetofflinewithrollbackimmediate"'数据库脱机conn.Executesqlsql="restoredatabasemydbfromdisk='c:/sqlbackup.dat'"'数据库备份conn.Executesqlsql="alterdatabasemydbSETonlinewithrollbackimmediate"'数据库联机conn.Executesqlconn.Closesetconn=nothingcallconnectdb()'重新链接数据库(自制函数,略)
解决方案四:
发错了。。。
解决方案五:
好像应该用JS获得吧
解决方案六:
this.textBox2.Text=this.textBox1.SelectedText;
解决方案七:
楼上的我用来,但是它提示:textBox没有这个属性哦,那么用JavaScript怎么实现呢?2楼我直接看不懂啊!!!!!!!!
解决方案八:
2楼的发错了撒,发给别的帖子的
解决方案九:
document.selection.createRange().text用这个
解决方案十:
1
解决方案十一:
引用8楼raybvb09的回复:
document.selection.createRange().text用这个
在后台代码中的方法中直接这么用吗?不需要用<script></script>什么的引起来吗?我不会JS,没学过那个,请问那个很重要吗?
解决方案十二:
你新建一个文本文档,后缀名改成HTM,用记事本打开把下面的代码拷进去保存,双击看看就明白了。<formname=form1><inputid=tbxsize=50><inputid=tbx2size=50><inputtype=buttononclick="btn();"value="submit"></form><scriptlanguage=javascript>functionbtn(){alert(document.selection.createRange().text);}</script>
解决方案十三:
引用8楼raybvb09的回复:
document.selection.createRange().text用这个
我用了后,他提示说:当前上下文中不存在document啊,我应该怎么用?我是这么用的: stringss=document.selection.creationRange().text;
解决方案十四:
这是从客户端代码取到的值,不能直接用。。
解决方案十五:
我想实现这样的功能,就是用户在TextBox里写字,可以设置字体,我的思路是这样的:用户选择字符-》单击代表粗体的Button-》TextBox里的用户选择的字的前后就分别加上了<b>与</b>代表粗体的Button的事件是这么写的:前台:<asp:HiddenFieldID="hid1"runat="server"/><asp:ButtonID="btn_ct"runat="server"Text="粗体"OnClick="btn_ct_Click"/>后台:protectedvoidPage_Load(objectsender,EventArgse){btn_ct.Attributes.Add("OnClick","document.getElementById('hid1').value=document.selection.createRangle().text");}protectedvoidbtn_ct_Click(objectsender,EventArgse){if(hid1.Value!=null){stringstr1=hid1.Value.ToString();stringstr2="<b>"+st+"</b>";stringstr3=tb1.Text;Regexregex=newRegex(str1);stringtft=regex.Replace(str3,str2);tb1.Text=tft;}}但是这样出来后,并没有达到想要的效果,如果我在TextBox里写了:发--就会变成--<b></b>发<b></b>.而且,每单击一次按钮,页面就回发一次。有没有在客户端直接完成的方法啊,谢谢哦,我知道这需要javaScript,但是我对这东西一窍一通。
解决方案:
学习...
解决方案:
xx
解决方案:
这样就好咯。。<scriptlanguage=javascript>functionbtn(){alert(document.selection.createRange().text);document.selection.createRange().text="<b>"+document.selection.createRange().text+"</b>";}</script>
解决方案:
谢谢在哥,这就试下,还有这句alert(document.selection.createRange().text);去掉行不?
解决方案:
当然行
解决方案:
终于成了,可是每按一次按钮,页面还是回发了一下子.怎么让页面不回发呢?就像这个论坛一样,设置字体的时候,没看见整个页面回发一下子啊.我看见这个局部的TextBox 好像是回发了一下子 .这是不是就是局部刷新?
解决方案:
又出问题了,按钮就行,为什么DropDownList就不行?前台:JS函数:functionddl1(){document.selection.createRange().text="<fontface="+"""+document.getElementById('"+ddl1.ClientID+"').Value+"""+">"+document.selection.createRange().text+"</font>";}前台:DropDownList控件:<asp:DropDownListID="ddl1"runat="server"AutoPostBack="True" OnSelectedIndexChanged="javascript:ddl1()"><asp:ListItem>黑体</asp:ListItem><asp:ListItem>宋体</asp:ListItem><asp:ListItem>Arial</asp:ListItem><asp:ListItem>Verdana</asp:ListItem></asp:DropDownList>当我改变DropDownList的选择后,TextBox里选择的文字为什么没有反应呢?
解决方案:
当然了.下拉列表是值是应该是document.getElementById('"+ddl1.ClientID+"').Options[document.getElementById('"+ddl1.ClientID+"').selectedIndex].text