通过js获取不到input类型的值
为什么js里的title获取不到Title1的值 ?
一、js部分
function getValues() {
// 取得HTML内容
var html = editor.html();
// 同步数据后可以直接取得textarea的value
editor.sync();
html = document.getElementById('content1').value; // 原生API
var title = document.getElementById("Title1").value;
var flag = CreateNews.insertNews(html,title);
if (flag == "1") {
alert("新闻插入成功!");
}else{
alert("新闻插入失败!");
}
}
二、页面部分
<table id="tb1" width="100%">
<tr align="center">
<td align="right" width="10%">标题:</td>
<td><input id="Title1" name="Title1" style="width:100%" type="text" runat="server" />
</td>
</tr>
<tr align="center"><td colspan="2" align="center">
<%--textbox id="content1" name="content" cols="100" rows="8" style="width: 700px; height: 300px;"></textbox--%>
<textarea id="content1" name="content" cols="100" rows="8" style="width: 700px; height: 300px;">
</textarea>
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true"> </asp:ScriptManager>
</td>
</tr>
<tr align="center"><td colspan="2"><input type="button" onclick="getValues()" value="提交" /></td></tr>
</table>
[解决办法]
document.getElementById("<%=Title1.ClientID%>")
[解决办法]
右键查看页面的源文件 看下Id多少
[解决办法]
用了母版文本框的ID就变了
html = document.getElementById('<%=content1.ClientID%>').value;
var title = document.getElementById("<%=Title1.ClientID%>").value;
[解决办法]
一种就是使用服务器语言 <%=Title1.ClientID%>
一种就是打开网页,右键查看源码,看生成的ID是什么。
一般使用 母版页 页面的ID都会变
[解决办法]
看你是不是runat server了啊