将值从文本输入传递到javascript函数

时间:2011-10-31 17:07:02

标签: javascript html input textfield

在我的html文件中,我调用了一个带有两个参数的javascript函数,其中第二个参数是应该保存的文件的名称。

<a id="record_button" onclick="Recorder.record('audio', 'test.wav');" href="javascript:void(0);" title="Record"><img src="images/record.png" width="24" height="24" alt="Record"/></a>

我想创建一个动态变量,它从文本字段中获取值并将其作为第二个参数(而不是test.wav)转发,以便用户可以确定文件的名称。

<label for="filename">Filename</label>
<input name="filename" type="text">

感谢。

3 个答案:

答案 0 :(得分:11)

如果您为用户输入id属性,则会更容易:

<input name="filename" id="filename" type="text">

现在,您可以使用以下命令访问Javascript中的值:

document.getElementById('filename').value

请注意,如果您不控制Recorder.record()方法,则需要先验证用户输入(至少要验证他们输入的内容)。我建议将其移到一个单独的功能,例如:

function recordToFilename() {
    var input = document.getElementById('filename'),
        fileName = input.value;
    if (fileName) {
        Recorder.record('audio', fileName);
    } else {
        alert('Please enter a filename!');
        input.focus();
    }
}

然后只使用该功能:

<a id="record_button" onclick="recordToFilename();" href="javascript:void(0);" title="Record"><img src="images/record.png" width="24" height="24" alt="Record"/></a>

工作示例:http://jsfiddle.net/nrabinowitz/GFpRy/

答案 1 :(得分:2)

Recorder.record('audio', document.yourformname.filename.value)

确保您的表单具有name="?"属性,然后将yourformname替换为您放置的表单名称。 filename也指输入的name属性。

答案 2 :(得分:1)

<html>
<head>
  <script>
     function addData (fn, ln, em) {

       console.log(fn);
       console.log(ln);
       console.log(em);

     }
 </script>
</head>
<body>
    <input Type="text" name="FirstName" id="fn">
    <input Type="text" name="LastName" id="ln">
    <input Type="email" name="Email" id="em">
    <button onClick="addData(fn.value,ln.value,em.value)">click</button> 
</body>
</html>