将SimpleModal与ASP.NET集成

我要感谢Eric制作了SimpleModal并补充了演示。看起来很棒。

我只希望我能弄清楚如何使用它。(是我,我缺少一些染色体或其他东西。)抱歉,我的确对不起。

我看过几个演示和调用特定功能的演示,但这是假定脚本已正确集成到项目中。这是我遇到的问题的症结所在,当我查看jquery时,我不知道我在看什么。

背景知识:我从事程序设计已有25年,从事汇编,C,VB的工作,并且在过去10年中一直担任SQL DBA的工作,并设计大型公司系统。现在,我正在尝试实现Web ASP.NET的飞跃。我的C#技能不断提高,并且已经在其中编写了完整的发票系统,但是我不知道如何将这个SimpleModal或任何jquery集成并在ASP.NET 2008中工作。

我已经将示例代码粘贴到default.aspx文件中,只剩下总的垃圾代码堆。

有人可以为将SimpleModal正确集成到我的项目中做些什么?我已经阅读了Eric对其他人的答复并阅读了后续链接,但是没有人可以解释如何完全整合我发现的Eric。

我假设我需要在项目中包含css,img和js文件夹及文件。检查,我从根本上知道了。在那之后,我不知道该去哪里。我的猜测是,需要在页面代码顶部附近声明它,然后在HTML中创建链接,并在其后面的代码中调用它。如何做到这一点超出了我的范围,我现在花了大约3-4天的时间对此进行研究...

一旦我弹出了一个简单的模态形式,我就应该能够看得出该死的东西并弄清楚如何适应它,并希望随着时间的流逝将逐渐填补我的理解空白。

这是一个示例default.aspx文件的外观。我想使用Code Behind中的C#调用打开SimpleModal。

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    </div>
    </form>
</body>
</html>

这是C#中的默认示例代码如下所示:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
}

任何人都想尝试简单地将SimpleModal集成到默认项目中吗?

任何帮助将不胜感激。

胜利者

最佳答案

我认为您是从纯粹的代码背后的角度来解决这个问题的。但是使用jQuery(或大多数其他任何客户端框架)会使您的应用程序向客户端的实际展示方式发生很大变化。服务器处理提供数据(采用XML,JSON或您需要的其他某种格式),而客户端利用HTML DOM结构以及JavaScript,CSS和提供的数据来呈现应用程序。

在您的评论中,您声明要使用模式作为操作成功的确认。在这里,您将使用jQuery来收集信息并向您的服务(也许是WCF服务)发出AJAX调用,然后该服务将以成功或失败作为响应。然后,您将在jQuery ajax成功或错误回调处理程序中处理成功或失败。这将在客户端而不是在服务器上完成。

这是一个仅显示模态的简单示例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <style type="text/css">
        #simplemodal-overlay {background-color:#000;}
        #simplemodal-container {background-color:#333; border:8px solid #444; padding:12px;}
    </style>
</head>
<body>
    <div>
        Email: <input type="text" id="email" /><br />
        Message: <input type="text" id="message" /><br />
        <button id='theModal'>Show</button>
        <div id="sample" style="display:none">
            <h2>Sample Data</h2>
            <p>Your email was successful!!</p>
            <p>You can press ESC to close this dialog or click <a href="#" class="simplemodal-close">close</a>.</p>
        </div>
    </div>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
    <script type="text/javascript" src="http://simplemodal.googlecode.com/files/jquery.simplemodal-1.3.5.js"></script>
    <script type="text/javascript">
        $(document).ready(function () {
            $("#theModal").click(function () {
                $("#sample").modal({
                    opacity: 80,
                    overlayCss: { backgroundColor: "#fff" }
                });
            });
        });
    </script>
</body>
</html>

这只是一个基本的HTML页面,没有任何代码隐藏。单击提交按钮时,我可以对其进行修改以调用服务:
$("#theModal").click(function () {
    $.ajax({
      type: "POST",
      dataType: "json",
      contentType: "application/json",
      url: "MyEmailService.svc/SendEmail",
      data: {"email": $("#email").val(),
             "message": $("#message").val()},
      success: function(data) {
                 $("#sample").modal({
                     opacity: 80,
                     overlayCss: { backgroundColor: "#fff" }
                 });
      },
      error: function(m, t, x) { alert("something bad happened"); }
    });
});

这都是伪代码,因为该服务不存在,但希望我已经正确地传达了该示例。但是在此伪代码示例中,服务将处理电子邮件功能并响应客户端,然后将执行成功回调处理程序(将显示模式)。如果与服务通信或解析返回值时出现问题,则将调用错误回调处理程序。

请让我知道这可不可以帮你。如果您还有其他问题,请告诉我们,我将相应地更新答案。希望这可以帮助!!

关于asp.net - SimpleModal和ASP.NET的基本帮助,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3507482/

10-13 07:16