实际上我正在创建一个 SQL 查询编辑器,用户在其中输入查询,然后我得到此文本并传递给 SQL COMMAND 并执行查询并在 GRIDVIEW
中向用户显示结果。 .但是,问题是我怎样才能在codebehind
中获取文本?来自 <div contenteditable="true" ></div>
.
我有 3 个文件,它们是 html
, JScript.js
, StyleSheet.css
.
我把textbox
仅用于检查以检索 textbox
中的值单击按钮但它不起作用。
这是我的 aspx 代码:
<asp:Content ID="Content2" ContentPlaceHolderID="body" Runat="Server">
<form id="form1" runat="server">
<div id="editor" contenteditable="true"></div>
<br />
<asp:Button runat="server" OnClick="load" Text="Submit" />
<asp:TextBox ID="TextBox1" ForeColor="White" runat="server"></asp:TextBox>
</form>
</asp:Content>
这是 aspx.cs 代码:
public void load(object sender, EventArgs e)
{
HtmlGenericControl footer = (HtmlGenericControl)mainContent.FindControl("editor");
String cmd = footer.InnerHtml.ToString();
TextBox1.Text = cmd;
}
这是 JScript.js 代码:
$(function () {
$("#editor").on("keydown keyup", function (e) {
if (e.keyCode == 32) {
var text = $(this).text().replace(/[\s]+/g, " ").trim();
var word = text.split(" ");
var newHTML = "";
$.each(word, function (index, value) {
switch (value.toUpperCase()) {
case "SELECT":
case "FROM":
case "WHERE":
case "LIKE":
case "BETWEEN":
case "NOT LIKE":
case "FALSE":
case "NULL":
case "FROM":
case "TRUE":
case "NOT IN":
newHTML += "<span class='statement'>" + value + " </span>";
break;
default:
newHTML += "<span class='other'>" + value + " </span>";
}
});
$(this).html(newHTML);
//// Set cursor postion to end of text
var child = $(this).children();
var range = document.createRange();
var sel = window.getSelection();
range.setStart(child[child.length - 1], 1);
range.collapse(true);
sel.removeAllRanges();
sel.addRange(range);
$(this)[0].focus();
}
});
});
所有代码工作正常,但问题是我怎样才能在 codebehind
中获取文本从里面div
哪个用户以查询的形式输入。谢谢
最佳答案
为您的 DIV
添加 runat=server
以在代码隐藏中访问 as
<div id="editor" runat=server contenteditable="true"></div>
关于javascript - 我如何从 asp.net c# 后面的代码中的 div 中获取文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37833324/