Как узнать, какая кнопка была нажата в форме - PullRequest
0 голосов
/ 15 февраля 2019

У меня есть форма, которая имеет 3 кнопки управления.Я хочу знать, какая кнопка была нажата, и сохранить значение в переменной сеанса, как это сделать.

Я получаю пустое значение в переменной сеанса

<form method="post" name = "theform" >
  <table>
    <tr>
         <td align="left" width="100%">
             <input type="submit" name = "button" id ="idbutton1" value="Value1">      
              </td>
         <td align="left" width="100%">
             <input type="submit" name = "button" id ="idbutton2" value="Value2">
              </td>

        <td align="left" width="100%">
             <input type="submit" name = "button" id ="idbutton3" value="Value3">
              </td>
       </tr>
</table>
</form>

Session("type")=Request.Form("button") 

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019

вы можете использовать этот jquery, чтобы определить, на какую кнопку вы нажали, и каково значение этой кнопки:

$( "#idbutton1" ).click(function() {
alert( $("#idbutton1").val() );
});


$( "#idbutton2" ).click(function() {
 alert( $("#idbutton2").val() );
});

...

, и вместо предупреждения вы можете сохранить ее в своем сеансе.

* но этот метод не является динамическим и недостаточно хорош для слишком большого количества кнопок

отредактировано: общий режим:

вы можете получить идентификатор и значение, как это в общем случае:

$( "input[name=button]" ).click(function() {
 alert( $(this).attr("id") );
 alert($(this).val());
 button_value = $(this).val();
});

и, если вы используете c # или Django или что-либо в своем бэкэнде, вы можете отправить переменную в нее с помощью ajax и затем сохранить ее в своем сеансе:

.ajax ({type:'GET', url: '/ yourfunction', data: {'button_value': button_value}, dataType: 'json',

    success: function (data) {
    // do anything
    }
  )}

, и вы можете получить переменную в своей функции и сохранить ее в сеансе.

0 голосов
/ 15 февраля 2019

Необходимо проверить, что Request.Form("button") содержит значение, прежде чем присваивать его переменной сеанса, иначе вы будете назначать пустое строковое значение для Session("type") каждый раз, когда страница загружается.

if request.form("button") <> "" then Session("type") = Request.Form("button")
...