日期:2014-05-17  浏览次数:20483 次

为什么前台的js代码里头,无法调用同一页面的textbox1.text
C# code

  [color=#FF0000] <asp:TextBox ID="TextBox1" runat="server" TextMode="MultiLine" />[/color]     
          <%-- <input id="hd" runat="server" type="hidden"  />--%>
       <script type="text/javascript">
           var ckeditor; //定义全局变量 ckeditor
           $(function () {//当全部DOM元素加载完毕后执行下面语句,不加此句javascript将无法找到TextBox1
              ckeditor = CKEDITOR.replace("<%=TextBox1.ClientID %>"); //用CKEDITOR.replace命令将TextBox1格式化成富文本
       
               CKFinder.setupCKEditor(ckeditor, "/ckfinder/"); //用CKFinder.setupCKEditor命令将ckeditor与ckfinder进行整合
           });
    </script> 




C# code


function replyData() { //回复留言函数
                           id = id2;
                           //var content= CKEDITOR.instances.dis_content.getData()
                           //var textarea1 =document.getElementById("<%=TextBox1.ClientID%>").value;
                           [color=#FF0000]var textarea1 = TextBox1.Text;          [/color]                           //alert(textarea1);
                          // alert(id); 
                           $.ajax({
                               type: "POST",
                               cache: false,
                                 url: "WebService.asmx/Update", /* 注意后面的名字对应CS的方法名称 */
                               data: "{'id':'" + id + "','textarea1':'" + textarea1 + "' }", /* 注意参数的格式和名称 */
                                contentType: "application/json", //微软的WebService框架采用json内容类型进行数据传输
                              dataType:"json",
                               success: function (data) {
                                   alert("回复成功!")
                                   closeDiv();
                                   getData();
                               },
                               error: (function () { alert("error"); })
                           });
                       }



------解决方案--------------------
var textarea1 = TextBox1.Text; ?
客户端没有这样的写法

var textarea1 = TextBox1.Text

你是赋初值还是取值提交?
------解决方案--------------------
var textarea1 = document.getElementById("<%=TextBox1.ClientID %>").value
------解决方案--------------------
var textarea1 = document.getElementById("TextBox1").value;
------解决方案--------------------
哥 前台JS获取值 属性是:value
------解决方案--------------------
var textarea1 = document.getElementById("<%=TextBox1.ClientID %>").value
你alert(textarea1 )
看有内容吗?


------解决方案--------------------
var textarea1 = $("#<%=TextBox1.ClientID %>").val();
------解决方案--------------------
这个控件是服务器端控件,js获取的时候要用他的客户端ID即TextBox1.ClientID 来获取。asp.net里控件分为服务器端控件和HTML控件,这个还是你基础知识不扎实啊
------解决方案--------------------
把value换成innerHTML 试试。
最好是在浏览器里调试一下,就能看见那里出错了