gpt4 book ai didi

用于表单问候语的javascript

转载 作者:行者123 更新时间:2023-11-30 15:00:28 25 4
gpt4 key购买 nike

我正在构建一个 jquery 移动网站,并在此处找到了一段很棒的 javascript 来发布表单并将网站重定向回主页。我遇到的问题是它没有在发送的电子邮件中显示称呼,即使它在表单中并在网站上显示为下拉列表,当单击“Mr”按钮上的向下箭头时,以“MR”开头并显示“MR” .下面是 javascript 和表单。我们将不胜感激。

JavaScript

<script type="text/javascript">
function setReqObj() {
var nAjax;
if(window.XMLHttpRequest) {
nAjax = new XMLHttpRequest();
} else {
nAjax = new ActiveXObject("Microsoft.XMLHTTP");
}
return nAjax;
}

function _SubmitForm() {
var xmlhttp = setReqObj();

if(xmlhttp) {
xmlhttp.onreadystatechange=function() {
if(xmlhttp.readyState == 4) {
document.forms["contact-form"].reset();

$responseText = xmlhttp.responseText;
alert("Your query has been successfully submitted!");
document.location.href = "#home";
}
}



var $validEmail = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
var $name = document.forms["contact-form"]["Full_Name"].value;
var $comments = encodeURIComponent(document.forms["contact-form"]["Query"].value);
var $name2 = document.forms["contact-form"]["Phone"].value;
var $email = document.forms["contact-form"]["Email"].value;


if($name == "") {
alert("Please enter a valid name!");
return false;
}

if($comments.length <= 4) {
alert("Please enter a valid comment!");
return false;
}
if($name2 == "") {
alert("Please enter a valid phone number!");
return false;
}
if(!$email.match($validEmail)) {
alert("Please enter a valid email address!");
return false;
}

var $ajData = "Full_Name=" + $name + "&Query=" + $comments + "&Phone=" + $name2 + "&Email=" + $email;

xmlhttp.open("POST", "http://www.test.uk.com/cgi-bin/cgiemail/emailform2.txt", true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send($ajData);
} else {
document.forms["contact-form"].submit();
}
}
</script>

表格

<fieldset data-role="ui-field-contain">  
<div class="controlgroup">
<legend>Enquiry Form</legend><br>
<select name="salutation" id="salutation" >
<option value="Mr">Mr</option>
<option value="Mrs">Mrs</option>
<option value="Ms">Ms</option>
<option value="Miss">Miss</option>
</select>



<br>
<label for="fullname">Full name:</label>
<input type="text" name="Full_Name" id="fullname" />

<label for="query">Query:</label>
<textarea name="Query" id="query"></textarea>

<label for="phone">Phone Numbers:</label>
<textarea name="Phone" id="phone" ></textarea>

<label for="email">Email:</label>
<input type="text" name="Email" id="email" />
</div>
</fieldset>

-->

  </form>

非常感谢,鲁瓦克

最佳答案

您没有从您的表单中选择称呼的值(value),我认为这就是您没有在您的电子邮件中获得它的原因。首先,选择称呼值:

var $salutation = document.forms["contact-form"]["salutation"].value;

现在,将此值添加到您通过 ajax 发送的数据中:

var $ajData = "Salutation=" + $salutation + "&Full_Name=" + $name + "&Query=" + $comments + "&Phone=" + $name2 + "&Email=" + $email; 

现在,您应该在服务器上获取 Salutation 的值。您仍然需要确保在服务器端也将此值附加到发送的电子邮件中。

关于用于表单问候语的javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46608675/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com