JQuery проверки формы без полей - PullRequest
0 голосов
/ 30 марта 2010

У меня есть таблица (в форме), заполненная переключателями (с кнопкой для каждого значения в коллекции). Если коллекция пуста, в таблице ничего не отображается (что нормально). (Я использую Struts2)

Моя проблема возникает при проверке того, что пользователь выбрал одну из этих переключателей при нажатии кнопки отправки. Я использую проверки JQUERY, и они работают довольно хорошо, ЕСЛИ БЕЗ переключателей не выбрать (коллекция пуста).

$('#startProcessForm').validate({ 
    rules: { 
        selectedProcess: {
            required: true
        } 
    }, 
    messages: { 
        selectedProcess: "Please select a process to start." 
    } 
}); 

Если список пуст, то нет полей (переключатель или иное) с именем selectedProcess. Поэтому мой вопрос таков:

Как сделать так, чтобы «selectedProcess» существовал И не прошел проверку «required: true», если в коллекции ничего нет? Я думал, что смогу создать пустой тег с тем же именем (selectedProcess), если коллекция пуста? Вот что, я думаю, сработало бы, но не похоже:

<s:if test="processes != null && !processes.isEmpty()">
    <s:iterator value="processes" status="processesStatus">
        <tr>
            <td><s:radio name="selectedProcess" list="{name}"></s:radio></td>
        </tr>
    </s:iterator>
</s:if>
<s:else>
    <tr>
        <td><a name="selectedProcess"></a></td>
    </tr>
</s:else>

Спасибо!

1 Ответ

2 голосов
/ 30 марта 2010

вы можете сделать <input type="hidden" name="selectedProcess" value="-1">, если нет значений (вместо вашего <a name>)

...