Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 不带runat的ASP.NET=";服务器";_C#_Asp.net_Webforms - Fatal编程技术网

C# 不带runat的ASP.NET=";服务器";

C# 不带runat的ASP.NET=";服务器";,c#,asp.net,webforms,C#,Asp.net,Webforms,我必须使用asp.net web表单创建一个简单的网站,但我必须不使用任何服务器控件,即runat=“server” 我有以下资料: HTML <form method="post" action=""> <label for="name">Name</label> <input id="name" name="name" type="text" /> <input value="Save" type="submit"

我必须使用asp.net web表单创建一个简单的网站,但我必须不使用任何服务器控件,即
runat=“server”

我有以下资料:

HTML

<form method="post" action="">
    <label for="name">Name</label>
    <input id="name" name="name" type="text" />
    <input value="Save" type="submit" />
</form>
我目前正在将
//do something
放在
受保护的无效页面\u Load(object sender,EventArgs e)
函数中,但我想在单击保存按钮时调用它。但是,如果不使用
runat=“server”
,我不知道如何做到这一点。有没有办法做到这一点


感谢advanced

这个问题的真正答案在评论中:

使用
webforms
但说不
runat=“server”
就像说去划独木舟,但没有划桨。听起来更像是应该使用ASP.NET MVC

我还将添加快速完成任务的功能(注意:并不意味着
ASP.Net网页
仅适用于“简单”网站-你可以用它做任何你想做的事情)

我必须使用asp.net web表单创建一个简单的网站

但既然它“必须”是
WebForms
,它仍然是可行的。这样做明智吗nope-尤其是上述选项以及
SPA
/
Javascript
/
XHR
上的其他注释

一天结束时,仍然是
HTTP请求和响应
,因此标准HTML表单输入和类似的工作就像在任何其他“框架”中一样:

  • “前端”(嗯,
    页面
    在技术上是一个
    控件
    ,但我们坚持使用
    WebForms
    ,因此这将是唯一的“服务器控件”):

    NoServerControls.aspx

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="NoServerControls.aspx.cs" Inherits="WebForms.NoServerControls" %>
    
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Humor Me Batman</title>
    </head>
        <body>
            <form method="post">
                <input type="text" name="wtf"/>
                <input type="submit" value="Batman"/>
            </form>
    
            <h1>It's "classic ASP" Batman! <%= echo %></h1>
       </body>
    </html>
    


蝙蝠侠:)

我有一个关于这个的测试项目,请参考这个

    <table>
                <tr>
                    <td>Name </td>
                    <td>
                        <input type="text" id="custid" class="form-control custname" name="fullname" required />
                    </td>
                </tr>
                <tr>
                    <td>Designation </td>
                    <td>
                        <select id="loading" class="form-control loading">
                            <option value="0">Select </option>
                            <option value="HR">HR </option>
                            <option value="Engg">Engg </option>
                            <option value="Doctor">Doctor </option>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td>Mobile No. </td>
                    <td>
                        <input type="text" id="mobile" class="form-control mobile" onkeypress="return event.charCode >=48 && event.charCode <= 57" name="fullname" required />
                    </td>
                </tr>
                <tr>
                    <td>Email Id </td>
                    <td>
                        <input type="text" id="emailid" class="form-control emailid" name="fullname" required />
                    </td>
                </tr>
                <tr>
                    <td colspan="2" id="btn">
                        <button type="button" onsubmit="return validateForm()" class="btn btn-primary">Save</button>
                    </td>
                </tr>
            </table>
<script>
   $(document).ready(function () {
            $('#btn').click(function () {
                var CustNamevalidate = $('.custname').val();
                if (CustNamevalidate != '') {
                    Name = $(".custname").val();
                    Loading = $(".loading").val();
                    Mobile = $(".mobile").val();
                    EmailId = $(".emailid").val();

                    $.ajax({
                        type: "POST",
                        url: "test.aspx/Complextype",
                        data: JSON.stringify({
                            Nam: Name, Loadin: Loading, Mobil: Mobile, EmailI: EmailId
                        }),
                        contentType: "application/json; charset=utf-8",
                        datatype: "json"
                    }).done(function (result) {
                        console.log(result);
                        alert(JSON.stringify(result));
                    })
                }
                else {
                    alert('Please Enter Customer Name');
                }
            });
        });



    </script>

名称
任命
挑选
人力资源
工程师
医生
流动电话号码。
电子邮件Id
拯救
$(文档).ready(函数(){
$('#btn')。单击(函数(){
var CustNamevalidate=$('.custname').val();
如果(CustNamevalidate!=''){
名称=$(“.custname”).val();
加载=$(“.Loading”).val();
Mobile=$(“.Mobile”).val();
EmailId=$(“.EmailId”).val();
$.ajax({
类型:“POST”,
url:“test.aspx/Complextype”,
数据:JSON.stringify({
Nam:Name,Loadin:Loading,Mobil:Mobile,EmailI:EmailId
}),
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”
}).完成(功能(结果){
控制台日志(结果);
警报(JSON.stringify(result));
})
}
否则{
警报(“请输入客户名称”);
}
});
});
WEB方法背后的代码

[WebMethod]
    public static string Complextype(string Nam, string Loadin, string Mobil, string EmailI)
    {
        string Qtets = "Details are : Name =" + Nam + " And Designation is =" + Loadin + " And Mobileno=" + Mobil + " And EmailI=" + EmailI;
        //  ScriptManager.RegisterStartupScript(Page, typeof(Page), "test", "<script>alert('Sorry This Category Name Already Exist.');</script>", false);

        using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Constr"].ConnectionString))
        {
            SqlCommand cmd = new SqlCommand("usp_add_upd_emptb", con);
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@EmpName", Nam);
            cmd.Parameters.AddWithValue("@EmpNo", Mobil);
            cmd.Parameters.AddWithValue("@Desig", Loadin);
            cmd.Parameters.AddWithValue("@Email", EmailI);
            cmd.Parameters.AddWithValue("@id", 0);

            con.Open();
            cmd.ExecuteNonQuery();
            if (con.State == ConnectionState.Open)
            {
                con.Close();
            }
            else
            {
                con.Open();
            }
        }
        //SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Constr"].ConnectionString);
        //{
        //}

        return Qtets;
    }
[WebMethod]
公共静态字符串Complextype(字符串Nam、字符串装入、字符串移动、字符串电子邮件i)
{
字符串Qtets=“详细信息为:Name=“+Nam+”,名称为=“+Loadin+”和Mobileno=“+Mobil+”和EmailI=“+EmailI;
//ScriptManager.RegisterStartupScript(第页,typeof(第页),“测试”,“警报('抱歉,此类别名称已存在');”,false);
使用(SqlConnection con=newsqlconnection(ConfigurationManager.ConnectionStrings[“Constr”].ConnectionString))
{
SqlCommand cmd=newsqlcommand(“usp\u add\u upd\u emptb”,con);
cmd.CommandType=CommandType.storedProcess;
cmd.Parameters.AddWithValue(“@EmpName”,Nam);
cmd.Parameters.AddWithValue(“@EmpNo”,Mobil);
cmd.Parameters.AddWithValue(“@Desig”,Loadin);
cmd.Parameters.AddWithValue(“@Email”,EmailI);
cmd.Parameters.AddWithValue(“@id”,0);
con.Open();
cmd.ExecuteNonQuery();
if(con.State==ConnectionState.Open)
{
con.Close();
}
其他的
{
con.Open();
}
}
//SqlConnection con=新的SqlConnection(ConfigurationManager.ConnectionString[“Constr”].ConnectionString);
//{
//}
返回QTET;
}

如果不使用服务器控件调用函数,则不能直接调用函数。您需要具有静态函数的Web服务。

使用JavaScript…@DavidG-这是唯一的方法吗?无论您做什么,都需要某种形式的JavaScript,甚至连
runat=server
也可以控制。使用webforms但说“不”
runat=“server”
就像说去划船,但没有划桨。听起来你应该使用ASP.NETMVC@DavidG-很公平。非常感谢。
    <table>
                <tr>
                    <td>Name </td>
                    <td>
                        <input type="text" id="custid" class="form-control custname" name="fullname" required />
                    </td>
                </tr>
                <tr>
                    <td>Designation </td>
                    <td>
                        <select id="loading" class="form-control loading">
                            <option value="0">Select </option>
                            <option value="HR">HR </option>
                            <option value="Engg">Engg </option>
                            <option value="Doctor">Doctor </option>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td>Mobile No. </td>
                    <td>
                        <input type="text" id="mobile" class="form-control mobile" onkeypress="return event.charCode >=48 && event.charCode <= 57" name="fullname" required />
                    </td>
                </tr>
                <tr>
                    <td>Email Id </td>
                    <td>
                        <input type="text" id="emailid" class="form-control emailid" name="fullname" required />
                    </td>
                </tr>
                <tr>
                    <td colspan="2" id="btn">
                        <button type="button" onsubmit="return validateForm()" class="btn btn-primary">Save</button>
                    </td>
                </tr>
            </table>
<script>
   $(document).ready(function () {
            $('#btn').click(function () {
                var CustNamevalidate = $('.custname').val();
                if (CustNamevalidate != '') {
                    Name = $(".custname").val();
                    Loading = $(".loading").val();
                    Mobile = $(".mobile").val();
                    EmailId = $(".emailid").val();

                    $.ajax({
                        type: "POST",
                        url: "test.aspx/Complextype",
                        data: JSON.stringify({
                            Nam: Name, Loadin: Loading, Mobil: Mobile, EmailI: EmailId
                        }),
                        contentType: "application/json; charset=utf-8",
                        datatype: "json"
                    }).done(function (result) {
                        console.log(result);
                        alert(JSON.stringify(result));
                    })
                }
                else {
                    alert('Please Enter Customer Name');
                }
            });
        });



    </script>
[WebMethod]
    public static string Complextype(string Nam, string Loadin, string Mobil, string EmailI)
    {
        string Qtets = "Details are : Name =" + Nam + " And Designation is =" + Loadin + " And Mobileno=" + Mobil + " And EmailI=" + EmailI;
        //  ScriptManager.RegisterStartupScript(Page, typeof(Page), "test", "<script>alert('Sorry This Category Name Already Exist.');</script>", false);

        using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Constr"].ConnectionString))
        {
            SqlCommand cmd = new SqlCommand("usp_add_upd_emptb", con);
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@EmpName", Nam);
            cmd.Parameters.AddWithValue("@EmpNo", Mobil);
            cmd.Parameters.AddWithValue("@Desig", Loadin);
            cmd.Parameters.AddWithValue("@Email", EmailI);
            cmd.Parameters.AddWithValue("@id", 0);

            con.Open();
            cmd.ExecuteNonQuery();
            if (con.State == ConnectionState.Open)
            {
                con.Close();
            }
            else
            {
                con.Open();
            }
        }
        //SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Constr"].ConnectionString);
        //{
        //}

        return Qtets;
    }