如何在web3.eth.sendTransaction中动态设置属性

时间:2018-11-05 13:45:09

标签: javascript transactions attributes blockchain web3

我正在尝试创建动态发送以太坊交易,该交易会将以太坊发送到特定地址。

所有属性(“从”和“值”)均正常工作,但“至”则不起作用(因为不接受var address1,并且我正在尝试插入javascript变量)。

我从ajax获取接收者的地址,可以很容易地得到警告,但是当我尝试将其添加到“ to”属性时,不会弹出Metamask交易窗口。哦,我决定用户从下拉框中获取此地址。我已经尝试了所有使用引号和cookie进行的操作,但是没有任何效果。

在第一张图片下面,我试图动态设置js变量,而在第二张照片上却不起作用,我试图静态设置它并在工作


recommended solution


Me trying to set variable dynamically and it's not working


function generateTransactionHash(){
    var amount = web3.toWei($('#vsota').val(), "ether");
    var uporabnik = $('#izbiraPrejemnika').val();

    var request = $.ajax({
        url: "model/izbiraPrejemnikaDAO.php",
        type: "POST",
        data: {uporabnik: uporabnik},
        success: function(reciever_address){
            var address = "'"+reciever_address+"'";
            web3.eth.sendTransaction({
                to: address,
                from: "<?php echo($dataEthAddress[0]) ?>",
                value: amount
            }, function(err, res){
                $('#transHash1').val(res);
                console.log(res);
            });

        }

    });
        return false;
    }

1 个答案:

答案 0 :(得分:0)

看来真的很奇怪。尝试在发送事务之前设置一个断点,以在allert之后查看address1的值(应该相同,但以防万一)。 address1变量本身不应包含双引号。