日期:2014-05-18  浏览次数:20459 次

一个JS在前后台传值的问题
JScript code

<script type="text/javascript">
        function a()
        {
            document.getElementById("TextBox2").value=document.getElementById("TextBox1").value;
            
        }
    </script>


HTML code

 <asp:TextBox ID="TextBox1" runat="server" onkeyup="a();"></asp:TextBox>
 <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>


就这么一段代码,就是在textBox1中输入的信息,同时在TextBox2中显示出来,这个好用.我在后台还有一个方法,我要把textBox1中输入的信息在此方法中转换后,再在textBox2中显示,不知道应该怎么样,我是在Page_Load下写的,可是出错
 public string ms=null;
  protected void Page_Load(object sender, EventArgs e)
  {
  ms = cf.ChineseCap(TextBox1.Text);
  }

------解决方案--------------------
cf.ChineseCap??这是什么?
ms = cf.ChineseCap(TextBox1.Text.toString());
------解决方案--------------------
那你得用Ajax了,等待高手
------解决方案--------------------
明白你的意思了,就是前台调后台的方法,
在TEXT1 changle时把值按ChineseCap方法处里完在给TEXT2是吧

2种办法
1是用AJXA 
2就是些一个changle事件调 脚本 脚本里写<%=ChineseCap()%>(〈%%〉这是
最笨的写法,只是给你参考的)。
注意一点,这种写法是不能传JS参数的,反正你是2个服务器空间,后台处理吧
------解决方案--------------------
必须使用AJAX相关技术
------解决方案--------------------
探讨
我一开始是写在TextChanged事件里的,cf.ChineseCap这个方法是把textBox1中的汉字的拼音首字母提取出来,然后显示在textBox2中,写在TextChanged事件里也没有问题,可是要走一下服务器端,所以我想用JS解决.就是在textBox1中输入汉字的同时,textBox2就显示这个汉字的拼音首字母

------解决方案--------------------
随手写的,lz自已去测试下:
后台:
C# code

public string ChineseCap
{
  get
  {
    return cf.ChineseCap(TextBox1.Text);
  }
}

------解决方案--------------------
不会就学啊,肯定要走服务器的
------解决方案--------------------
<script type="text/javascript">
var pinyinstr= <%=ms %> ;

function a()
{
document.getElementById("TextBox2").value=document.getElementById("pinyinstr").value;
}
</script>

这些的话你应该把MS做成PUBLIC string,然后把处理完的数据给他,不过这样可能变不了。
LS 的LS那个MM的方法应该没问题
------解决方案--------------------
可以用iframe解决一下,调用另外一个页面来处理数值,然后用js赋值给test2
------解决方案--------------------
你把 cf.ChineseCap(TextBox1.Text); 方法中里处理TextBox1.Text的参数拿出来 放到CS文件里 然后传给JS,用JS处理。
不用AJAX 又要不刷新页面 估计也只能这样了。。