选择特定下拉选项时添加错误消息

时间:2014-08-28 13:43:00

标签: php forms drop-down-menu contact

好的,我做了一些研究,找不到能解决问题的东西,即使我确定它只是一个简单的修复:)

我有一个简单的联系表单,其中第一行是下拉选项。此下拉列表确定表单提交给哪个员工。我只想制作我的默认选项"请选择类别"返回一条错误消息,以便提交者必须返回并选择其中一个选项以获取发送的表单。如果未选择任何内容,则会在默认电子邮件中创建大量垃圾邮件。

以下是代码的下拉位:

                <tr>
            <td><label for="sendTo">Category (required):</label></td>
            <td>
                <select id="sendTo" name="sendTo">
                    <option id="pleaseSelectcategory1" value="pleaseSelectcategory1">Please Select Category</option>
                    <option id="aftermarketCustomerservice" value="aftermarketCustomerservice">Aftermarket Customer Service</option>
                    <option id="technicalAssistance" value="technicalAssistance">Technical Assistance</option>
                    <option id="aftermarketSales" value="aftermarketSales">Aftermarket Sales</option>
                    <option id="performanceProducts" value="performanceProducts">Performance Products & Sales</option>
                    <option id="oemSales" value="oemSales">OEM Sales</option>
                    <option id="exportSales" value="exportSales">Export Sales</option>
                    <option id="generalFeedback" value="generalFeedback">General Feedback</option>
                </select>
            </td>
            </tr>

我只需要放入我的html中的内容,如果有的话,在我的php文件中发生此错误消息。在此先感谢!!

2 个答案:

答案 0 :(得分:1)

您应该在发布数据之前使用Javascript函数验证表单。这对于UX来说更好,并且会阻止表单甚至到达PHP post函数。

在您的表单中,onsubmit字段调用Javascript函数:

<form name="form" id="form" action="" onsubmit="return validateForm()" method="POST">

以及用于检查选择框值的Javascript函数:

// Basic form validation for select box.
function validateForm() {
    if (document.getElementById("sendTo").value != null && docmument.getElementById("sendTo").value != "pleaseSelectcategory1") {
        return true;
    }

    //Handle error message here.
    alert("Please select a category");
    return false;
}

您可以在表格在PHP中发布后验证您的表单:

if ($_POST['sendTo'] === 'pleaseSelectcategory1') {
    // Redirect back to form or do whatever
}

答案 1 :(得分:0)

在纯JavaScript中,您可以使用以下函数:

function checkCategory(){
  if(document.getElementById('sendTo').value === 'pleaseSelectcategory1') {
    alert("You need to select category");
    //This is to ensure that the form doesn't get submitted.
    return false;
  }
}

使用按钮上的onclick="javascript:checkCategory();"或表单本身onsubmit="javascript:checkCategory();"

在PHP中,您可以使用:

if($_POST['sendTo'] == "pleaseSelectcategory1")
{ 
  //However you want to handle the the fact the user selected the option
}