0

我在 Remix IDE 中编写了以下函数,该函数在 IDE 中创建合同时有效,但是当尝试在我的 HTML 代码中调用它时,该代码使用 testRPC 和 web3 提供程序连接,我收到一个气体不足的错误。

function addPig(uint _idNum, uint _age, uint _weight) public returns (string) {

    var newPig = Pig(_idNum, _age, _weight, owner, 0);

    //If the pig is already stored
    if(pigs[_idNum].idNum != 0x0) {
        return("This pig already exists");
    } else {
        //Store the new pig and increment number of pigs
        pigs[_idNum] = newPig;
        pigsArray.push(newPig);
        farmPigs++;
    }
    Details(_idNum, _age, _weight); 
}

以下是尝试使用从 3 个输入字段中检索到的值调用函数的 HTML 代码:

$("#addButton").click(function() {
    console.log($("#idNum").val(), $("#age").val(), $("#weight").val());
    var pigID = $("#idNum").val();
    var pigAge = $("#age").val();
    var pigWeight = $("#weight").val();
    Pig.addPig(pigID, pigAge, pigWeight);
});

控制台的输出是正确的,例如输入 3、3、3,所以我不确定为什么此输入不适用于solidity 功能,感谢任何帮助。

4

0 回答 0