Допустимо ли иметь два входных элемента с одинаковым именем?
т. е.:
<form 1>
<input type="hidden" name="url" value="1">
</form 1>
и
<form 2>
<input type="hidden" name="url" value="2">
</form 2>
это разрешено и допустимо?
6 ответов:
да действует
это хорошо
<form name="form1"> <input type="hidden" name="url" value="1"> </form> <form name="form2"> <input type="hidden" name="url" value="2"> </form>
Это тоже прекрасно и, как правило, интерпретируется как массив значений, например,
{url: [1, 2]}
в зависимости от того, что ваш сервер делает. В кодировке URL это будет выглядеть какurl=1&url=2
.<form name="form1"> <input type="hidden" name="url" value="1"> <input type="hidden" name="url" value="2"> </form>
да -- каждый будет представлять только свои соответствующие формы.
Если у вас есть их в той же форме, один будет переопределять другой, и это недопустимо.
" Это не хорошо " правильно анализирует в каждом браузере, о котором я знаю; если два url-адреса появляются в строке с кодировкой url, она будет рассматриваться как массив. Попробуйте это в JQuery:
$('<form name="form1">\ <input type="hidden" name="url" value="1">\ <input type="hidden" name="url" value="2">\ </form>').serialize()
вы получаете:
"url=1&url=2"
хорошо написанный синтаксический анализатор строки запроса вернет структуру json следующим образом:
{"url":["1", "2"]}
это строго спецификаций? Нет, но ни один из них не создает многострочную строку, избегая EOL с обратной косой чертой, как я сделал выше.
A) < form 1> < input type="hidden" name="url" value="1"> < /form 1> and < form 2> < input type="hidden" name="url" value="2"> < /form 2> is Okay,beacuse forms submiting time will be different B) < form 1> < input type="hidden" name="url" value="1"> < input type="hidden" name="url" value="2"> < /form 1> is also okay, but not standard coding practice JAVA Code two extract both values :: Map<String,String[]> parmMap = requestObj.getParameterMap(); String input1 = parmMap.get("url")[0]; String input2 = parmMap.get("url")[1];