【问题标题】:Contact Form not working with Thank You message联系表格无法与感谢信息一起使用
【发布时间】:2014-03-10 03:33:15
【问题描述】:

可以在链接上找到此联系人的 HTML 和 PHP,一切正常,我只想在按下“提交”按钮时收到一条消息说“谢谢”或类似的信息。我不担心最终结果是否通过电子邮件发送。仅用于演示目的。

如果给定字段为空白,我需要进行哪些修改才能保留出现的错误框?

谢谢

代码:

<script language="javascript">
    var sa_email_id = '1388-fc728';
    var sa_sent_text = 'Thank you for contacting us. We will get back to you soon.';
</script>

<script language="javascript" src="http://s1.smartaddon.com/sa_htmlform.js"></script>

<div id="sa_contactdiv">
    <form name=sa_htmlform style="margin:0px" onsubmit="return sa_contactform()">
    <table>
        <tr>
        <td>
            Title:<br>
            <select name="title" size="1">
                <option value="">Select</option>
                <option value="Mr.">Mr.</option>
                <option value="Mrs.">Mrs.</option>
                <option value="Miss">Miss</option>
                <option value="Ms.">Ms.</option>
                <option value="Dr.">Dr.</option>
                <option value="Prof.">Prof.</option>
                <option value="Other">Other</option>
            </select>
        </td></tr>
        <tr><td>
            Name:<br>
            <input type="text" name="name" />
        </td></tr>
        <tr><td>
            E-mail Address: <span style="color:#D70000">*</span><br>
            <input type="text" name="email" required="true" />
        </td></tr>
        <tr><td>
            Subject: <span style="color:#D70000">*</span><br>
            <input type="text" name="subject" required="true" />
        </td></tr>
        <tr><td>
            Message: <span style="color:#D70000">*</span><br>
            <textarea name="message" cols="42" rows="9" required="true">
            </textarea>
        </td></tr>
        <tr><td>
            <input type="submit" value="Send Message" style="font-weight:bold">
        </td></tr>
    </table>
    </form>

    <div style="padding-top:10px">
        <a href="http://www.smartaddon.com/contact_form.html">Contact Form</a> provided by SmartAddon.com
    </div>
</div>

Sa_html 格式: Sa_contactform:

var sa_params='';
function sa_contactform(){
var sa_frm=document.sa_htmlform;
for(i=0; i<sa_frm.elements.length; i++){
var sa_el=sa_frm.elements[i];if(sa_frm.elements[i].name){sa_params+='&'+sa_frm.elements[i].name+'='+encodeURIComponent(sa_frm.elements[i].value);}
if(!sa_el.value && sa_el.getAttribute('required')=='true'){alert('Please complete all required fields');sa_el.focus();return false;}
}
var s = document.createElement('script');
s.setAttribute('type','text/javascript');
s.setAttribute('src','http://www.smartaddon.com/js/postform.js');
document.body.appendChild(s);
return false;
}
function sa_contactsent(){
if(typeof sa_sent_text=='undefined'){sa_sent_text='Thank you for contacting us. We will get back to you soon.';}
document.getElementById('sa_contactdiv').innerHTML=sa_sent_text+'<br><br>Contact Form provided by SmartAddon.com';
}

JS:

sa_params += ''; sa_params += ''; sa_params += ''; sa_params += ''; sa_params += ''; var sa_iframe = document.createElement("iframe");document.body.appendChild(sa_iframe); sa_iframe.setAttribute('style', 'width:1px;height:1px;display:none'); var sa_frmcode = ' '+sa_params+' document.pgfrm.submit()'; sa_iframe.contentWindow.document.write(sa_frmcode); sa_contactsent();

【问题讨论】:

  • 你能让代码更容易阅读吗?即缩进和新行
  • 我不知道如何在这个网站上这样做,对不起(今天第一次使用它)
  • 这是在哪里定义的? sa_contactform()
  • 剪切'n'粘贴格式化的代码——即可读的代码
  • 抱歉,很不确定,但如果你看这里smartaddon.com/contact_form.html?submit=1,通过一个工作示例会更清楚。对于发送到的电子邮件地址,只需键入示例即可通过谢谢

标签: javascript php html forms contact


【解决方案1】:

我不知道我是否正确理解了您的问题。 但是,如果您不在乎输入到表单中的数据会发生什么,而只是想要一条消息,无论表单中是否有内容,请尝试以下操作:

<script language="javascript">
    var sa_sent_text = 'Thank you for contacting us. We will get back to you soon.';
    function sendme() {
        alert(sa_sent_text);
        document.getElementById("name").value = "";
        document.getElementById("message").value = "";
        document.getElementById("subject").value = "";
        document.getElementById("email").value = "";
        return false;
    }
</script>

<div id="sa_contactdiv">
    <form name=sa_htmlform style="margin:0px" onsubmit="return sendme();">
    <table>
        <tr>
        <td>
            Title:<br>
            <select name="title" size="1">
                <option value="Mr.">Mr.</option>
                <option value="Mrs.">Mrs.</option>
                <option value="Miss">Miss</option>
                <option value="Ms.">Ms.</option>
                <option value="Dr.">Dr.</option>
                <option value="Prof.">Prof.</option>
                <option value="Other">Other</option>
            </select>
        </td></tr>
        <tr><td>
            Name:<br>
            <input type="text" name="name" id="name" />
        </td></tr>
        <tr><td>
            E-mail Address: <span style="color:#D70000">*</span><br>
            <input type="text" name="email" id="email" required="true" />
        </td></tr>
        <tr><td>
            Subject: <span style="color:#D70000">*</span><br>
            <input type="text" name="subject" id="subject" required="true" />
        </td></tr>
        <tr><td>
            Message: <span style="color:#D70000">*</span><br>
            <textarea name="message" id="message" cols="42" rows="9" required="true">
            </textarea>
        </td></tr>
        <tr><td>
            <input type="submit" value="Send Message" style="font-weight:bold">
        </td></tr>
    </table>
    </form>
</div>

【讨论】:

  • 谢谢,我觉得你上面的html里没有任何条件。我只是想要一个指示,如果在按下“提交”按钮时没有输入任何框/归档,并且它们都只是相同或单独页面链接上的感谢消息。
  • 这就是 required="true" 属性的用途。 (如果其中一个字段中没有任何内容,我的浏览器会向我显示一条错误消息。如果每个字段中都有内容,它会显示该消息,然后什么也不做。)
  • 显然我可以编辑js。文件和 html。苍蝇并将其重新上传到我的网络服务器并编辑文件的标题以在我的域中引用它。如果任何表格为空,它已经给了我空的归档消息,这很好,它工作得很好。我想要的是,一旦全部填满/输入,它就会显示一条感谢消息。 (此消息可以在同一页面上,也可以在单独的 aref 链接上。)
  • 当您将其插入网页时不会。填写完所有表格(因此不会出现空的错误消息)并按提交后,它会清空所有字段并且不会给您任何消息。
  • 请看这里 Stefan,我已经把所有的东西都列出来了:jsfiddle.net/#&togetherjs=nBNDA1gk0g
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-16
  • 1970-01-01
  • 2020-09-22
  • 1970-01-01
相关资源
最近更新 更多