Javascript 将参数从JS发送到asp.net
我正试图将参数列表从JS发送到asp.net文件,但该文件未正确接收参数。有时我会收到“未定义”的信息。 这是我的密码: JavaScriptJavascript 将参数从JS发送到asp.net,javascript,c#,asp.net,office-interop,Javascript,C#,Asp.net,Office Interop,我正试图将参数列表从JS发送到asp.net文件,但该文件未正确接收参数。有时我会收到“未定义”的信息。 这是我的密码: JavaScript <script type="text/javascript"> $(document).on("click", "[id*=lnkView]", function () { $("#nome").html($(this).closest("tr").find("td.sDisplayName").text()); $("#P
<script type="text/javascript">
$(document).on("click", "[id*=lnkView]", function () {
$("#nome").html($(this).closest("tr").find("td.sDisplayName").text());
$("#Product").html($(this).closest("tr").find(".Produto").text());
$("#IP").html($(this).closest("tr").find("td.sNetworkAddress").text());
$("#DC").html($(this).closest("tr").find("td.dc").text());
$("#comentario").html($(this).closest("tr").find("td.sComment").text());
$("#inicio").html($(this).closest("tr").find("td.inicio").text());
$("#mensagem").html($(this).closest("tr").find(".mensagem").text());
$("#monitor").html($(this).closest("tr").find("td.sMonitorTypeName").text());
$("#dialog").dialog({
width: 1000,
title: "Detalhes para TP",
buttons: {
var width = 150;
var height = 250;
var left = 99;
var top = 99;
var janeleira = window.open("outlookPrimeiro.aspx?" + FIRST VALUE FROM THE FUNCTION ABOVE , 'janela', 'width=' + width + ', height=' + height + ', top=' + top + ', left=' + left + ', scrollbars=yes, status=no, toolbar=no, location=no, directories=no, menubar=no, resizable=no, fullscreen=no, setTimeout=1000');
//window.open("outlookPrimeiro.aspx");
//janeleira.onload = function () { janeleira.setTimeout('janeleira.close()', 1000); }
//setTimeout(function () { janeleira(); }, 1);
},
ok: function () {
$(this).dialog('close');
}
},
modal: true
});
return false;
});
function blinker() {
$('.blink').fadeOut(500);
$('.blink').fadeIn(500);
}
setInterval(blinker, 1000); //Runs every second
$(文档)。在(“单击”、“[id*=lnkView]”上,函数(){
$(“#nome”).html($(this.closest(“tr”).find(“td.sDisplayName”).text());
$(“#Product”).html($(this.closest(“tr”).find(“.Produto”).text());
$(“#IP”).html($(this.closest(“tr”).find(“td.sNetworkAddress”).text());
$(“#DC”).html($(this.closest(“tr”).find(“td.DC”).text());
$(“#comentario”).html($(this.closest(“tr”).find(“td.sComment”).text());
$(“#inicio”).html($(this.closest(“tr”).find(“td.inicio”).text());
$(“#mensagem”).html($(this.closest(“tr”).find(“.mensagem”).text());
$(“#监视器”).html($(this.closest(“tr”).find(“td.sMonitorTypeName”).text());
$(“#对话框”)。对话框({
宽度:1000,
标题:“第TP段详情”,
按钮:{
var宽度=150;
var高度=250;
左向量=99;
var-top=99;
var janeleira=window.open(“outlookPrimeiro.aspx?”+上述函数的第一个值,'janela','width='+width+',height='+height+',top='+top+',left='+left+',scrollbars=yes,status=no,toolbar=no,location=no,directories=no,menubar=no,resizable=no,fullscreen=no,setTimeout=1000');
//window.open(“outlookPrimeiro.aspx”);
//janeleira.onload=函数(){janeleira.setTimeout('janeleira.close()',1000);}
//setTimeout(函数(){janeleira();},1);
},
ok:函数(){
$(this.dialog('close');
}
},
莫代尔:对
});
返回false;
});
函数闪烁器(){
$('.blink')。淡出(500);
$('.blink').fadeIn(500);
}
设置间隔(闪烁,1000)//每秒钟跑一次
ASP.NET
using System;
using System.Text;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
//NECESSÁRIO PARA USAR MARSHALL
using System.Runtime.InteropServices;
//NECESSARIO PARA USAR O OUTLOOK
using aqueleLance = Microsoft.Office.Interop.Outlook;
using OutlookApp = Microsoft.Office.Interop.Outlook.Application;
using testeUsingPrimeiro = Microsoft.Office.Interop.Outlook._AutoFormatRule;
using testeUsingSegundo = Microsoft.Office.Interop.Outlook._AutoFormatRules;
using testeUsingTerceiro = Microsoft.Office.Interop.Outlook.AutoFormatRule;
using testeUsingQuarto = Microsoft.Office.Interop.Outlook.AutoFormatRules;
public partial class outlookPrimeiro : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
String nomeDevice = null;
if (Request.QueryString != null)
{
// Seta banco dados
nomeDevice = Request.QueryString.ToString();
}
//DEFINICICOES DE DADOS DO E-MAIL A SER ENVIADO
String paraEmail = "para@email.com.br";
String copiaEmail = "mateus.pereira@linx.com.br";
//String copiaOculta = "";
String assuntoEmail = "Using Outlook 2013";
String corpo = "<html><body><div style='width:95%;text-align: center;background-color: black'><table style='width: 100%;text-align: center'><tr style='background-color:#5B2E90'><td style='color: white'>Prioridade</td><td style='color: white'>Acionamento</td><td style='color: white'>KBN</td><td style='color: white'>Device</td><td style='color: white'>IP</td><td style='color: white'>DC</td><td style='color: white'>WUG</td><td style='color: white'>Diretorio</td><td style='color: white'>Monitor</td><td style='color: white'>Comentario</td><td style='color: white'>Tempo Down</td><td style='color: white'>Inicio</td><td style='color: white'>TP</td></tr><tr><td style='color: orange'>Prioridade</td><td style='color: orange'>Acionamento</td><td style='color: orange'>KBN</td><td style='color: orange'>"+ nomeDevice + "</td><td style='color: orange'>IP</td><td style='color: orange'>DC</td><td style='color: orange'>WUG</td><td style='color: orange'>Diretorio</td><td style='color: orange'>Monitor</td><td style='color: orange'>Comentario</td><td style='color: orange'>Tempo Down</td><td style='color: orange'>Inicio</td><td style='color: orange'>TP</td></tr></table></div></body></html>";
//banco(?)
//string host = "127.0.0.1\SQLEXPRESSNOC";
//string usuario = "NOME DO USUÁRIO";
//string senha = "SENHA DO USUARIO";
//string banco = "NOME DO USUARIO";
//CRIA NOVO APP USANDO Microsoft.Office.Interop.Outlook.Application
OutlookApp appDoOutlook = new OutlookApp();
//CRIA E-MAIL
aqueleLance.MailItem itemDoMail = appDoOutlook.CreateItem(aqueleLance.OlItemType.olMailItem) as aqueleLance.MailItem;
//QUAL CONTA VAI ENVIAR? NECESSÁRIO TER A CONTA NA MÁQUINA
string nomeDaConta = "para@email.com.br";
//CRIA SESSÃO
aqueleLance.NameSpace sessao = itemDoMail.Session;
//PEGA CONTAS PRESENTES NA MÁQUINA
aqueleLance.Accounts contaAccounts = sessao.Accounts;
//FOR 1 ATÉ FINAL DO NÚMERO DE CONTAS
for (int i = 1; i <= contaAccounts.Count; i++)
{
//aqueleLance.Account contaAccount RECEBE O VALOR DO FOR
aqueleLance.Account contaAccount = contaAccounts[i];
//SE A CONTA EXISTE, ELE VAI ENVIAR
//(COMPARAÇÃO FEITA EM LOWER CASE
if (contaAccount.DisplayName.ToLower() == nomeDaConta.ToLower())
{
//COMANDO PARA ENVIAR USANDO A CONTA XXXXX
itemDoMail.SendUsingAccount = contaAccount;
//LIBERA VARIAVEL
Marshal.ReleaseComObject(contaAccount);
//PARA O COMANDO
break;
}
}
//PARA QUEM ENVIA O E-MAIL
itemDoMail.To = paraEmail;
//ENVIAR COM COPIA PARA
itemDoMail.CC = copiaEmail;
//COPIA OCULTA
//itemDoMail.BCC = copiaOculta;
//ASSUNTO DO EMAIL
itemDoMail.Subject = assuntoEmail;
//CORPO DO EMAIL EM HTML
itemDoMail.HTMLBody = corpo;
//"<html><body>Enviado pelo <strong>Outlook</strong> 2013<br/> Teste do envio com CC e BCC.<br/><br/></body></html>"
//IMPORTANCIA DO EMAIL
itemDoMail.Importance = aqueleLance.OlImportance.olImportanceHigh;
//ENVIA O EMAIL
//NÃO É POSSÍVEL VER ANTES DE ENVIAR SEM HABILITAR O DISPLAY ABAIXO
//itemDoMail.Send();
//HABILITE ISSO PARA VER A MENSAGEM ANTES DE ENVIAR
//PRECISA TIRAR O SEND ACIMA
itemDoMail.Display(false);
//LIBERA CONTAS
Marshal.ReleaseComObject(contaAccounts);
//LIBERA SESSÃO
Marshal.ReleaseComObject(sessao);
}
}
使用系统;
使用系统文本;
使用System.Collections.Generic;
使用System.Linq;
使用System.Web;
使用System.Web.UI;
使用System.Web.UI.WebControl;
//马歇尔
使用System.Runtime.InteropServices;
//展望未来
使用aquelance=Microsoft.Office.Interop.Outlook;
使用OutlookApp=Microsoft.Office.Interop.Outlook.Application;
使用TestUsingPrimeiro=Microsoft.Office.Interop.Outlook.\u自动格式化规则;
使用TestUsingSegundo=Microsoft.Office.Interop.Outlook.\u自动格式化规则;
使用TestUsingTerceiro=Microsoft.Office.Interop.Outlook.AutoFormatRule;
使用TestUsingQuarto=Microsoft.Office.Interop.Outlook.AutoFormatRules;
公共部分类outlookPrimeiro:System.Web.UI.Page
{
受保护的无效页面加载(对象发送方、事件参数e)
{
字符串设备=null;
if(Request.QueryString!=null)
{
//Seta银行护墙板
nomeDevice=Request.QueryString.ToString();
}
//明确地说,护墙板是通过电子邮件发送的
字符串paraEmail=”para@email.com.br";
字符串copiaEmail=“mateus。pereira@linx.com.br";
//字符串copiaOculta=“”;
字符串assuntoEmail=“使用Outlook 2013”;
字符串corpo=“prioridadeactionamentokbn设备pdcwugdirectoromonitorocmentariotempo downiciiotpprioridadeactionamentokbn”+nomeDevice+“ipdcwugdirectoromonitorocmentariotempo downiciiotp”;
//银行(?)
//string host=“127.0.0.1\SQLEXPRESSNOC”;
//字符串usuario=“NOME DO USUÁRIO”;
//字符串senha=“senha DO USUARIO”;
//string banco=“NOME DO USUARIO”;
//CRIA NOVO应用程序USANDO Microsoft.Office.Interop.Outlook.Application
OutlookApp appDoOutlook=新的OutlookApp();
//CRIA电子邮件
AQUELEANCE.MailItem itemDoMail=appDoOutlook.CreateItem(AQUELEANCE.OlItemType.olMailItem)作为AQUELEANCE.MailItem;
//我们是否需要一个环境保护区
字符串nomeDaConta=”para@email.com.br";
//CRIA SESSÃO
aquelenance.NameSpace sessao=itemDoMail.Session;
//佩加·康塔斯介绍了纳姆·奎纳
Accounts contaaaccounts=sessao.Accounts;
//在康塔斯的最后一场比赛中获得1分
对于(int i=1;i您正在发布的变量应分配给一个参数。您的查询字符串似乎不是以variablename开头的
Request.QueryString是可以发布的变量集合
请求如下页面:
window.open("outlookPrimeiro.aspx?variablename=" + value);
string variable = Request.QueryString["variablename"]
应使用符号(&S)添加连续变量:
window.open("outlookPrimeiro.aspx?variablename=" + value + "&variablename2= " + value2);
在服务器端,您可以这样读取变量:
window.open("outlookPrimeiro.aspx?variablename=" + value);
string variable = Request.QueryString["variablename"]
只是为了确认一下,我必须在我的outlookPrimeiro.aspx中创建变量来接收来自JS的数据,对吗?如果您使用page.aspx?abc=123发送变量名,您可以通过Request.QueryString['abc']在服务器端读取它们。您不必为它创建变量。好的。我会先尝试创建变量,如果这不起作用,我会这样尝试。谢谢。另一个问题,您知道如何从JS获取值吗?为每个变量创建一个变量?否。ASP CodeBehind:string name doesnotmatter=Request.QueryString[“girlsJustWannaHaveFun”]
为什么对话框会在“按钮”部分打开一个窗口?您想做什么?我正在开发一个系统,该系统将监控SNMP中的错误结果,并通过电子邮件将错误发送给负责人。结果与我上面显示的JS一起列出。在ASP中,我试图获取结果,并将其发送到电子邮件中。window.open o使用Outlook 2013(interop)中的新邮件打开窗口。