У меня есть форма, которую я использовал для упрощения, но концепция такая же.
<form method=post action= somephp.php>
<table>
<tr><td><input name= first></tr>// These input are where people enter
<tr><td><input name= second></tr>// numbers. They then click on
<tr><td><input name= third></tr>//calculate and the results appear
<tr><td><input name= fourth></tr>//in the below table
<td>Result one <input type = "hidden" name="somename" value=""></td>//
<td>Result two <input type = "hidden" name="somename1 value=""></td>
<button>Calculate</button>
<button type submit>save</button>
</form>
Форма отлично работает. Математика для формы выполняется с использованием javascript. Я получаю значения результатов в результатах один и два, как ожидалось.
Теперь для моей проблемы. После того, как я щелкнул вычисление и получил результаты, я нажимаю кнопку "Сохранить" и хочу, чтобы он публиковал все входы, включая скрытые, в скрипт PHP.
У меня проблемы с отправкой скрытых feilds.
Он работает, если я поместил фигуру в атрибут value, но то, что я хочу, и всю ночь боролся с ней, - это как я могу опубликовать результат с одним и двумя feilds с моим скриптом PHP через скрытую feild.
Я тщетно пытался получить переменную из моего js-скрипта, чтобы действовать как значение для скрытой feild, но продолжать получать неопределенную ошибку индекса в PHP. Я думаю, это может быть потому, что страница уже загружена. Я прикрепил переменную, которая содержит значение для результата 1, и результат два на событие onChange и т.д., Но не может заставить это работать.
Как резюме - как я могу передать внутренний HTML-код (результат 1 и результат 2) на скрытое значение ввода для публикации в PHP-скрипт. Я открыт для других решений
Заранее спасибо за вашу помощь.
<script>
var a = document.getElementByID('result one id').value;
var b = document.getElementByID('HIDDEN INPUT ID').value;
Я хочу a = b
но я борюсь
Вы можете использовать jquery для установки значений скрытых полей.
<form method=post action= somephp.php>
<table>
<tr><td><input name= "first" /></td></tr>
<tr><td><input name= "second" /></td></tr>
<tr><td><input name= "third" /></td></tr>
<tr><td><input name= "fourth" /></td></tr>
<td>Result one <input id="hidden1" type = "text" name="somename" value=""/></td>
<td>Result two <input id="hidden2" type = "text" name="somename1" value=""/></td>
<button id="calculate">Calculate</button>
<button id="submit" type="submit">save</button>
</table>
</form>
И jquery
$(document).on('click', '#calculate', function(){ //you could perform your calculations here or define a separate function
$('#hidden1').val('calculated value1');
$('#hidden2').val('calculated value2');
return false;
});
calculated value1
и calculated value2
только для иллюстрации. Вы можете установить значения по мере необходимости
<button type submit>
.