弹窗调试
JavaScript:
console.log("测试用") // 浏览器控制台message中显示 (运行后, 在网页中,按F12) 2023/11/30 ok
alert("测试用") //网页53311弹窗 2023/11/30 ok
window.alert("测试用") //网页53311弹窗 2023/11/30 ok
document.write("测试用") //不弹窗,页面显示 2023/11/30 ok
var tempConfirm1 = confirm("x:" + x + "fieldName:" + fieldName)//(如果变量fieldName没取到值,那么不会弹窗) //网页53311弹窗 2023/11/30 ok
*.aspx
var tempConfirm1 = confirm("DBID为:" + DBID); //弹出确认框
<body>
<div>
<button onclick="$('#log').html('')">Clear</button>
<p>Log:</p>
<div id='log' style='background-color: #c7eaff; border-radius: 2px; color: #000; padding: 20px'></div>
</div>
</body>
<script type="text/javascript">
var changed = function (instance, cell, x, y, value) {
$('#log').append('将cellName'的值改为: ' + value + '字段名为:' + FieldName);
}
</script>
$('#log').append('将' + cellName + '的值改为: ' + value + '字段名为:' + FieldName);
*.aspx.cs (另:protected void Page_Load()中,可以打断点调试)
public class CommonClass
{
public CommonClass()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
/// <summary>
/// 说明:MessageBox用来在客户端弹出对话框。
/// 参数:TxtMessage 对话框中显示的内容。
/// </summary>
public string MessageBox(string TxtMessage)
{
string str;
str = "<script language=javascript>alert('" + TxtMessage + "')</script>";
return str;
}
}
CommonClass class1 = new CommonClass();
Response.Write(class1.MessageBox("验证失败!输入工号和密码是否正确"));
ClientScript.RegisterStartupScript(GetType(), "alert", "alert('上个页面传来的用户名');", true);
*.ashx(一般处理程序)
//在【public void ProcessRequest(HttpContext context)】中打断点,可以看到值。
//在VS调试窗口可确认 System.Diagnostics.Debug.WriteLine("s0 : " + s0); //确认 (调试-窗口-输出) 2023.12.06
//在页面上显示 Hello World
context.Response.Write("Hello World");
//弹窗显示
string message = "操作成功!";
string script = "alert('" + message + "');";
context.Response.Write("<script>" + script + "</script>");
context.Response.Write(string.Format("注册成功"));
在 public void ProcessRequest (HttpContext context) {} 内的变量只能通过txt输出
using System;
using System.Web;
using System.Data;
using System.IO;
using System.Data.SqlClient; //数据库
using Newtonsoft.Json; //操作json库
public class jexcel_数据表_删除行 : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
//前端删除行_写入数据库 OK
if (context.Request["RequestType"] == "deleted_Row") //save_data是homePage.aspx中自定义的请求类型
{
string dbId = context.Request["DBID"].ToString(); //ID
string s0 = "delete from outstanding where id=" + dbId;
string filePath = "D:/output/jsondata1.txt";
string jsonData = "获取前端传来的json数据: delete from outstanding where id=" + dbId; //想输出的信息
//string myfielname = DateTime.Now.ToString("yyyy-MM-dd_HHmmss") + ".txt";
//string filePath = System.Web.HttpContext.Current.Server.MapPath("~/temp/" + myfielname); //TXT文件保存到服务器temp目录下
System.IO.File.WriteAllText(filePath, jsonData);
//往数据库写入新信息
SqlConnection conn = new SqlConnection("server=;database=;uid=;pwd=");
conn.Open();
SqlCommand cmd = new SqlCommand(s0, conn);
cmd.ExecuteNonQuery(); //执行SQL语句,返回受影响的行数
cmd.Dispose(); //释放资源
conn.Close();
};
}
public bool IsReusable {
get {
return false;
}
}
}
注意:如果不能弹窗,可能被浏览器的弹窗拦截器拦截,因此可能需要在浏览器中进行设置以允许弹窗显示。
要取消 Edge 浏览器的弹窗拦截器拦截,您可以按照以下步骤进行操作:
1. 打开 Edge 浏览器并转到设置页面。您可以通过单击浏览器右上角的菜单按钮(三个水平点)并选择“设置”来打开设置页面。
2. 在设置页面中,向下滚动并单击“查看高级设置”按钮。
3. 在“隐私和服务”部分中,找到“弹出窗口和重定向”选项,并选择“允许”或“始终允许”选项。
4. 关闭设置页面并重新加载您的网站或应用程序。现在,Edge 浏览器应该不再拦截您的弹窗。
请注意,取消弹窗拦截器可能会降低浏览器的安全性,并使您的计算机容易受到恶意软件和网络攻击的攻击。因此,建议您仅在必要时取消弹窗拦截器,并在完成后重新启用它。
要在 .ashx 文件中打断点调试,您可以使用 Visual Studio 内置的调试器。以下是设置 .ashx 文件调试的步骤:
1. 在 Visual Studio 中打开您的项目。
2. 在 .ashx 文件中通过单击代码编辑器窗口的左边缘设置断点。
3. 在解决方案资源管理器中右键单击您的项目,然后选择“属性”。
4. 在项目属性窗口中,选择“Web”选项卡。
5. 在“调试器”部分下,选择“ASP.NET”作为调试器。
6. 单击“创建虚拟目录”按钮以为您的项目创建虚拟目录。
7. 按 F5 键或从菜单中选择“调试 > 启动调试”开始调试。
当您开始调试时,Visual Studio 将启动一个 Web 服务器并在 Web 浏览器中打开您的 .ashx 文件。当断点被触发时,调试器将暂停执行并允许您检查变量并逐步执行代码。
*.cs (C#语言源代码文件,是后台代码文件)
(控制台程序)
Console.WriteLine("Hello World");
Console.Read();
(Form.cs 窗口)
MessageBox.show("你好");
?
this.loginStatus.Text = "验证成功!";
(1)C# 桌面程序执行后, 点VS 菜单: 视图--输出
Console.Write(string); 或 Console.WriteLine(string);
(2)C# 网页程序
System.Diagnostics.Debug.WriteLine("数量是: "+table1.Rows.Count.ToString());
VS菜单 调试-窗口-输出
浙公网安备 33010602011771号