Передача переменной java-script в тот же аргумент php файла действия формы

0

Имея html-форму с кнопками, я хотел передать значение кнопки щелчка (которое получается как javascript-переменная "tree") для того же действия формы, что и аргумент php-скрипта. Мой javascript для получения значения кнопки похож,

<script>
function getVal(value)
  {
  var tree =value;      
  }
</script>

По форме,

<button type="" name="btn"  value="a" onclick="getVal(this.value)">a</button> 
<button type="" name="btn"  value="b" onclick="getVal(this.value)">b</button> 
<button type="" name="btn"  value="c" onclick="getVal(this.value)">c</button>  

<input type="submit" value="Submit">

В принципе, я хотел бы сделать что-то вроде:

<form action="backend.php" **js variable as argument**  method="POST"> 
  • 0
    Чтобы отправить данные на сервер с помощью POST-запроса, проще всего установить скрытое поле со значением нажатия кнопки. Поэтому создайте скрытое поле, когда кнопка нажата, установите значение в поле и затем получите доступ к значению поля на сервере. Это будет работать только с примитивными типами!
  • 0
    Почему бы не использовать флажок? С помощью некоторого CSS вы можете оформить его как кнопку.
Теги:

1 ответ

0
Лучший ответ

У вас есть два варианта. Первым было бы добавить скрытое поле в форму для отправки в виде данных POST, а второе - добавить его к действию, которое сделает его переменной GET.

Опция 1:

<script>
function getVal(value)
  {
    document.getElementById('buttonValue').value =  value;
  }
</script>

<input type="hidden" name="btnValue" id="buttonValue" value=""/>

Вариант 2:

<script>
function getVal(value)
  {
    document.getElementById('myForm').action =  "backend.php?btnValue="+value;
  }
</script>

<form action="backend.php" id="myForm"  method="POST">

С помощью первого варианта вы можете получить значение в PHP с помощью $_POST['btnValue'] а во втором случае вы можете использовать $_GET['btnValue']

  • 0
    Спасибо, у меня есть идея @Hugo

Ещё вопросы

Сообщество Overcoder
Наверх
Меню