0

我创建了一个javascript和一个WebMethod。它适用于 IE,但不适用于 Firefox 和 chrome

我的网络方法

[WebMethod]
    public string Send(string name, string email, string message)
    {
        try
        {
            MailMessage objMailMessage = default(MailMessage);
            objMailMessage = new MailMessage();
            objMailMessage.From = new MailAddress(email, name,System.Text.Encoding.UTF8);
            objMailMessage.To.Add("feedback@abc.in");
            objMailMessage.Subject = "Feedback";
            objMailMessage.Body = "<b>Name :</b> " + name + "<br/><br/>";
            objMailMessage.Body += "<b>Email :</b> " + email + "<br/><br/>";
            objMailMessage.Body+=  "<b>Message :</b> "+message;
            objMailMessage.IsBodyHtml = true;
            objMailMessage.Priority = MailPriority.High;

            CommonFunctions.CommonFunctions.SendEmailMessage(objMailMessage);
            return "success";
        }
        catch (Exception ex)
        {
            Logger.Log.Error(ex);
            return "Fail";
        }
    }

我的脚本

$.ajax({
                    datatype: 'text',
                    type: 'POST',
                    url: options.url,
                    data: { name: $(this_id_prefix + '#name').val(), email: $(this_id_prefix + '#email').val(), message: $(this_id_prefix + '#message').val() },
                    success: function (data) {
                        $(this_id_prefix + '#loading').css({ display: 'none' });
                        var xmlDoc = data;
                        var returnvalue = xmlDoc.childNodes(1).firstChild.nodeValue;
                        if (returnvalue == "success") {
                            $(this_id_prefix+'#callback').show().append(options.recievedMsg);

                            setTimeout(function () {
                                $(this_id_prefix + '.holder').show();
                                $(this_id_prefix + '#callback').hide().html('');
                            }, 2000);

                        if(options.hideOnSubmit == true) {
                            //hide the tab after successful submition if requested
                            $(this_id_prefix+'#contactForm').animate({dummy:1}, 2000).animate({"marginLeft": "-=450px"}, "slow");
                            $(this_id_prefix+'div#contactable_inner').animate({dummy:1}, 2000).animate({"marginLeft": "-=447px"}, "slow").animate({"marginLeft": "+=5px"}, "fast"); 
                            $(this_id_prefix+'#overlay').css({display: 'none'});    
                        }
                    } else {
                        $(this_id_prefix+'#callback').show().append(options.notRecievedMsg);
                        setTimeout(function(){
                            $(this_id_prefix+'.holder').show();
                            $(this_id_prefix+'#callback').hide().html('');
                        },2000);
                    }
                },
                error:function(){
                    $(this_id_prefix+'#loading').css({display:'none'}); 
                    $(this_id_prefix+'#callback').show().append(options.notRecievedMsg);
                                    }
 });        

我无法从 to 获得返回webmethodscript。在成功功能中,我想检查一下,if(data=="Success")但在这里我无法检查。脚本中是否有任何问题,例如数据类型或任何其他问题?这里var returnvalue = xmlDoc.childNodes(1).firstChild.nodeValue;不工作。它在本地工作正常,但在发布到服务器后它不起作用。它在data中返回对象 xmldocument 。它不是返回字符串。我已将数据类型更改为文本

4

0 回答 0