在HTML链接中使用onClick传递多个值 [英] Pass multiple values with onClick in HTML link
问题描述
您好,我正在尝试使用HTML onclick函数传递多个值.我正在使用Javascript创建表格
Hi Im trying to pass multiple values with the HTML onclick function. Im using Javascript to create the Table
var user = element.UserName;
var valuationId = element.ValuationId;
$('#ValuationAssignedTable').append('<tr> <td><a href=# onclick="return ReAssign(\'' + valuationId + ',' + user + '\')">Re-Assign</a> </td> </tr>');
但是在我的Javascript函数中,userName是未定义的,valuationId是一个字符串,其中valuationId和UserName组合在一起
But in my Javascript function the userName is undefined and the valuationId is a string with the valuationId and the UserName combined
function ReAssign(valautionId, userName) {
valautionId;
userName;
}
推荐答案
如果valuationId
和user
是JavaScript变量,并且源代码是纯静态HTML,而不是以任何方式生成的,则应尝试:>
If valuationId
and user
are JavaScript variables, and the source code is plain static HTML, not generated by any means, you should try:
<a href=# onclick="return ReAssign(valuationId,user)">Re-Assign</a>
如果它们是从PHP生成的,并且包含字符串值,请在每个变量周围使用转义的引号,如下所示:
If they are generated from PHP, and they contain string values, use the escaped quoting around each variables like this:
<?php
echo '<a href=# onclick="return ReAssign(\'' + $valuationId + '\',\'' + $user + '\')">Re-Assign</a>';
?>
逻辑与问题中的更新代码相似,后者使用JavaScript(也许使用jQuery?)生成代码:不要忘记将转义的引号应用于每个变量:
The logic is similar to the updated code in the question, which generates code using JavaScript (maybe using jQuery?): don't forget to apply the escaped quotes to each variable:
var user = element.UserName;
var valuationId = element.ValuationId;
$('#ValuationAssignedTable').append('<tr> <td><a href=# onclick="return ReAssign(\'' + valuationId + '\',\'' + user + '\')">Re-Assign</a> </td> </tr>');
故事的寓意是
'someString(\''+'otherString'+','+'yetAnotherString'+'\')'
将被评估为:
someString('otherString,yetAnotherString');
您将需要:
someString('otherString','yetAnotherString');
这篇关于在HTML链接中使用onClick传递多个值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!