web3 - solidity - 错误的参数数量错误

web3 - solidity - wrong number of arguments error

我有一个 solidity 脚本:

pragma solidity ^0.4.18;

contract EthProj {

    string fName;
    string age;

    event Message(string name, string age);

    function setMessage(string _fName, string _age) public {
        fName = _fName;
        age = _age;

        emit Message(_fName, _age);
    }

    function getName() public constant returns (string) {
        return (fName);
    }

    function getMessage() public constant returns (string) {
        return (age);
    }
}

这是我的 ABI https://pastebin.com/QLBntb59 我在我的 JS 脚本中设置我的合同:

var Web3 = require('web3'); 
    var web3 = new Web3();
    web3.setProvider(new web3.providers.HttpProvider('http://localhost:8545'));
    var address = new String();

    var EthProjContract = web3.eth.contract(my abi);
    var EthProj = EthProjContract.at('0x1D056b1e9764D3C79ca55B68049FC906373044d8');

我正在这样使用我的函数: EthProj.setMessage($("#mes").val(), $("#name").val()); 我使用两个参数调用此函数,该函数有两个参数。我已经尝试重新上传我的合同以确保它是最新的,而且肯定是。我的 ABI 肯定也是最新的。怎么会出现这个错误呢,同样是参数量

好吧,解决方法其实很简单。我只是在 $("#mes").val() 中有错误的标签,所以它返回未定义。