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

求助:用JQuery/dom取得的textarea的值为空
脚本:
function submitToServer() {
   
  var title = $("#title").val();//title不空
  var contents =$("#guanshui").val();//用text(),html()也是空值
  $.post("dealWithTheActionOfUsers.ashx", { "title": title, "contents": contents }, function (data, status) {
  if (status == "success") {
  $("#div1").css("display", "none");
  }
  })
  }

html代码:
<div style="display:none" id="div1" >
  <p><asp:TextBox ID="title" runat="server"></asp:TextBox></p>
  <asp:TextBox ID="guanshui" runat="server" CssClass="ckeditor" TextMode="MultiLine" ></asp:TextBox>
  <asp:Button ID="btn" runat="server" Text="Button" OnClientClick="submitToServer()" />
 </div>

------解决方案--------------------
runat="server" 的html id 是会变化的

<%=guanshui.ClientId%>
------解决方案--------------------
<%=guanshui.ClientId%>
------解决方案--------------------
这种情况,你要查看网页源代码。因为.net的服务器控件如果是包含在另一个控件中那它的Id生成出来要带上父控件的ID和一些系统定义的编码,这时你要用<%=guanshui.ClientId%>

------解决方案--------------------
有些时候出问题是由于更改了某些地方,而没有重新生成,右击在浏览器中查看可能会出现一些问题;
重新生成一下