C# 在jquery中从字符串bulider获取未定义的值

C# 在jquery中从字符串bulider获取未定义的值,c#,jquery,C#,Jquery,我正在使用服务器端编码中的字符串bulider,通过post方法将一些值发送到jquery ajax方法中的php页面。但是当我尝试发送这些值时,表示未定义。我不知道如何传递cliendid。它是否正确 protected void btnAdd_Click(object sender, EventArgs e) { c.MyQuery("insert into tblHrims_currentOpeningsNew(nvrDesignation,nvrCom

我正在使用服务器端编码中的字符串bulider,通过post方法将一些值发送到jquery ajax方法中的php页面。但是当我尝试发送这些值时,表示未定义。我不知道如何传递cliendid。它是否正确

     protected void btnAdd_Click(object sender, EventArgs e)
    {

        c.MyQuery("insert into tblHrims_currentOpeningsNew(nvrDesignation,nvrCompany,nvrExperience,nvrLocation,nvrEducation,nvrDepartment,nvrIndustryType,nvrFnalArea,nvrJobDesc,nvrDesiredProfile,nvrContactPerson," +
" nvrContactNumber,nvrEmailId,nvrWantedPositions,nvrAddedBy,dttAddedon) values('" + txtDesg.Text.Trim().Replace("'", "") + "','" + ddlCompany.SelectedItem.Text + "','" + txtExperience.Text + "','" + txtLocation.Text + "','" + txtEducation.Text + "'," +
" '" + txtDept.Text.Trim().Replace("'", "") + "','" + ddlIndustryType.SelectedItem.Text + "','" + ddlFnalArea.SelectedItem.Text + "','" + txtJobDesc.Text.Replace("'", "''") + "','" + txtDesiredProfile.Text.Replace("'", "") + "'," +
" '" + txtContactName.Text.Trim().Replace("'", "") + "','" + txtContactno.Text.Trim().Replace("'", "") + "','" + txtEmailid.Text.Trim().Replace("'", "") + "','" + txtPositionWanted.Text.Trim().Replace("'", "") + "'," +
" '" + txtAddedBy.Text.Trim().Replace("'", "") + "','" + c.GetValue("select getdate()") + "')");
        string strID = c.GetValue("select max(intsno) from tblhrims_currentopeningsNew");
        lblAlert.Visible = true;
        lblAlert.Text = "SucessFully Added";
        StringBuilder mystringbuilder = new StringBuilder();
        mystringbuilder.Append("$(document).ready(function(){\n");
        mystringbuilder.Append("        var ddlCompany = $(\"#<%=this.ddlCompany.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtLocation = $(\"#<%=this.txtLocation.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtDept = $(\"#<%=this.txtDept.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var ddlIndustryType = $(\"#<%=this.ddlIndustryType.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtDesg = $(\"#<%=this.txtDesg.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var ddlFnalArea = $(\"#<%=this.ddlFnalArea.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtExperience = $(\"#<%=this.txtExperience.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtJobDesc = $(\"#<%=this.txtJobDesc.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtEducation = $(\"#<%=this.txtEducation.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtDesiredProfile = $(\"#<%=this.txtDesiredProfile.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtPositionWanted = $(\"#<%=this.txtPositionWanted.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtAddedBy = $(\"#<%=this.txtAddedBy.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtContactName = $(\"#<%=this.txtContactName.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtEmailid = $(\"#<%=this.txtEmailid.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("        var txtContactno = $(\"#<%=this.txtContactno.ClientID %>\").attr('value'); \n");
        mystringbuilder.Append("            $.ajax({\n");
        mystringbuilder.Append("            type: \"POST\",\n");
        mystringbuilder.Append("             url: \"http://172.16.126.32/Riyas/marggroup.com/get-current-openings.php\",\n");
        mystringbuilder.Append("             data: \"ddlCompany=\" + ddlCompany + \"& txtLocation=\"+ txtLocation+\"& txtDept=\"+ txtDept+\"& ddlIndustryType=\"+ ddlIndustryType+\"& txtDesg=\"+ txtDesg+\"& ddlFnalArea=\" + ddlFnalArea+\"& txtExperience=\"+ txtExperience+\"& txtJobDesc=\"+ txtJobDesc+\"& txtEducation=\"+ txtEducation+\"& txtDesiredProfile=\"+ txtDesiredProfile+\"& txtPositionWanted=\"+ txtPositionWanted+\"& txtAddedBy=\"+ txtAddedBy+\"& txtContactName=\"+ txtContactName+\"& txtEmailid=\"+ txtEmailid+\"& txtContactno=\"+ txtContactno,\n");
        mystringbuilder.Append("             success: function(response){\n");
        mystringbuilder.Append("                $('div.success').html(response); \n");
        mystringbuilder.Append("            }\n");
        mystringbuilder.Append("        });\n");
        mystringbuilder.Append("});\n");
        Page.ClientScript.RegisterStartupScript(this.GetType(), "Script", mystringbuilder.ToString(), true);
    }

您需要在生成的脚本中直接包含客户端ID,而不是使用指令加载它们

例如,更改以下行:

mystringbuilder.Append("        var ddlCompany = $(\"#<%=this.ddlCompany.ClientID %>\").attr('value'); \n");

此外,您还应该像上面的示例一样,将\n替换为AppendLine。

在未定义的行上-您是否检查了浏览器的控制台F12?您的javascript在HTML中看起来像什么?请看,我会将此测试框值发送到php…因此我得到的这些值是未定义的…@competable\u tech。我认为您缺少jquery对象中ClientID周围的引号。应该是:mystringbuilder.Appendvar ddlCompany=$'.Appendthis.ddlCompany.ClientID.Append.attr'value';。附属物@迪迪尔格。谢谢你的提示,已经晚了。@user1113151:对不起,我在回答中纠正了代码中的一个错误,这要感谢Didier G。但是,您必须将尝试使用clientid的其余行更改为使用相同的模式。此外,我认为\n也可能导致javascript错误。
mystringbuilder.Append("        var ddlCompany = $("').Append(this.ddlCompany.ClientID).Append("').attr('value');").AppendLine();