2

我正在尝试根据 Select Dropdown 选择更改要使用的 php 变量。我知道如何使用 jQuery .change 更改值,但在这种情况下,因为我使用的是变量,并且 php 在页面加载时运行,并且与 jquery 无关,所以我使用两个变量但不知道如何使用,请帮忙。

下面是两个php变量:

$str201 = '21|'.$paygate_id.'|'.$name.'|'.$amount.'|'.$currency.'|'.$return_url.'|'.$transaction_date.'|'.$start_date.'|'.$end_date.'|201|NO||'.$key;
$str202 = '21|'.$paygate_id.'|'.$name.'|'.$amount.'|'.$currency.'|'.$return_url.'|'.$transaction_date.'|'.$start_date.'|'.$end_date.'|202|NO||'.$key;

选择下拉

<select name="selectFrequency" id="selectFrequency">
  <option value="">- Select -</option>
  <option value="201">1</option>
  <option value="202">2</option>
</select>

我需要在选择更改时更改 php 变量的隐藏输入:

<input type="hidden" name="CHECKSUM" value="'.md5($str).'">
4

3 回答 3

1

向选项添加数据属性,其中包含您需要通过 CHECKSUM 传递的变量的 MD5 哈希值。

<select name="selectFrequency" id="selectFrequency">
  <option value="">- Select -</option>
  <option value="201" data-checksum="'. md5($str201). '">1</option>
  <option value="202" data-checksum="'. md5($str202). '">2</option>
</select>

在选择更改时,只需使用此值更新隐藏的输入

编辑:

更新:

$('#selectFrequency').change(function() {

 $('input[name=CHECKSUM]').val($('#selectFrequency :selected').data('checksum'));

});
于 2013-09-03T14:40:19.437 回答
0

要与服务器端代码交互,您需要进行 AJAX 调用。因此,将更改事件附加到您的选择,并触发 AJAX:

$("#selectFrequency").change(function() {
    var selectedValue = this.value;
    $.ajax({
        url: "yourPHP.php", //Leave this out to call the same page
        type: "POST", //is this actually a post?
        data: {yourData : selectedValue} //Send your data in a key/val object
        success: function(data) {
            console.log(data); //your PHP response
        }
    });
});
于 2013-09-03T14:33:19.210 回答
0

下面是ajax调用的简单演示。您可以修改它以供您使用。我认为您可以在服务器端 PHP 中使用 md5()

HTML & 脚本:

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#selectFrequency").change(function() {
    var selected = $(this).val();
    $.ajax({
        url: "script.php", 
        type: "POST", 
        data: {selected : selected},
        success: function(data) {
           alert(data); 
        }
    });
});
});
</script>

<select name="selectFrequency" id="selectFrequency">
  <option value="">- Select -</option>
  <option value="201">1</option>
  <option value="202">2</option>
</select>

脚本.php

<?php
echo $_POST['selected'];
?>
于 2013-09-03T14:46:42.497 回答