在 JavaScript 函数中传递字符串参数
Passing string parameter in JavaScript function
我试图将字符串传递给 JavaScript 函数。
正如这里提到的 - Pass a string parameter in an onclick function
我正在使用这个简单的代码-
<!DOCTYPE html>
<html>
<body>
<script>
name = "Mathew";
document.write("<button id='button' type='button' onclick='myfunction(\''" + name + "'\')'>click</button>")
function myfunction(name)
{
alert(name);
}
</script>
</body>
</html>
但是在控制台中它给出了类似 Uncaught SyntaxError: Unexpected token }
.
的错误
将您的变量 name
重命名为 myname
,因为 name
是 window
的通用 属性 并且在同一个 [=31] 中不可写=].
并替换
onclick='myfunction(\''" + name + "'\')'
有
onclick='myfunction(myname)'
工作示例:
var myname = "Mathew";
document.write('<button id="button" type="button" onclick="myfunction(myname);">click</button>');
function myfunction(name) {
alert(name);
}
将代码更改为
document.write("<td width='74'><button id='button' type='button' onclick='myfunction(\""+ name + "\")'>click</button></td>")
使用这个:
document.write('<td width="74"><button id="button" type="button" onclick="myfunction('" + name + "')">click</button></td>')
问题已得到解答,但为了您将来的编码参考,您可能会考虑这一点。
在您的 HTML 中,将名称作为属性添加到按钮并删除 onclick 引用。
<button id="button" data-name="Mathew" type="button">click</button>
在您的 JavaScript 中,使用其 ID 获取按钮,将函数分配给按钮的 click
事件,并使用该函数显示按钮的数据名称属性。
var button = document.getElementById('button');
button.onclick = myfunction;
function myfunction() {
var name = this.getAttribute('data-name');
alert(name);
}
您可以将字符串参数传递给 JavaScript 函数,如下代码所示:
我传递了三个参数,其中第三个是字符串参数。
var btn ="<input type='button' onclick='RoomIsReadyFunc(" + ID + "," + RefId + ",\"" + YourString + "\");' value='Room is Ready' />";
// Your JavaScript function
function RoomIsReadyFunc(ID, RefId, YourString)
{
alert(ID);
alert(RefId);
alert(YourString);
}
document.write(`<td width='74'><button id='button' type='button' onclick='myfunction(\``+ name + `\`)'>click</button></td>`)
使用 `` 比使用 "" 更好。这是一个更动态的答案。
试试这个...
onclick="myfunction('name')";
我试图将字符串传递给 JavaScript 函数。
正如这里提到的 - Pass a string parameter in an onclick function
我正在使用这个简单的代码-
<!DOCTYPE html>
<html>
<body>
<script>
name = "Mathew";
document.write("<button id='button' type='button' onclick='myfunction(\''" + name + "'\')'>click</button>")
function myfunction(name)
{
alert(name);
}
</script>
</body>
</html>
但是在控制台中它给出了类似 Uncaught SyntaxError: Unexpected token }
.
将您的变量 name
重命名为 myname
,因为 name
是 window
的通用 属性 并且在同一个 [=31] 中不可写=].
并替换
onclick='myfunction(\''" + name + "'\')'
有
onclick='myfunction(myname)'
工作示例:
var myname = "Mathew";
document.write('<button id="button" type="button" onclick="myfunction(myname);">click</button>');
function myfunction(name) {
alert(name);
}
将代码更改为
document.write("<td width='74'><button id='button' type='button' onclick='myfunction(\""+ name + "\")'>click</button></td>")
使用这个:
document.write('<td width="74"><button id="button" type="button" onclick="myfunction('" + name + "')">click</button></td>')
问题已得到解答,但为了您将来的编码参考,您可能会考虑这一点。
在您的 HTML 中,将名称作为属性添加到按钮并删除 onclick 引用。
<button id="button" data-name="Mathew" type="button">click</button>
在您的 JavaScript 中,使用其 ID 获取按钮,将函数分配给按钮的 click
事件,并使用该函数显示按钮的数据名称属性。
var button = document.getElementById('button');
button.onclick = myfunction;
function myfunction() {
var name = this.getAttribute('data-name');
alert(name);
}
您可以将字符串参数传递给 JavaScript 函数,如下代码所示:
我传递了三个参数,其中第三个是字符串参数。
var btn ="<input type='button' onclick='RoomIsReadyFunc(" + ID + "," + RefId + ",\"" + YourString + "\");' value='Room is Ready' />";
// Your JavaScript function
function RoomIsReadyFunc(ID, RefId, YourString)
{
alert(ID);
alert(RefId);
alert(YourString);
}
document.write(`<td width='74'><button id='button' type='button' onclick='myfunction(\``+ name + `\`)'>click</button></td>`)
使用 `` 比使用 "" 更好。这是一个更动态的答案。
试试这个...
onclick="myfunction('name')";