包含“。”的onClick函数参数 - javascript

我正在尝试创建一个表,该表包含该表的“更改密码”列中各项的onClick函数,以便我的系统管理员可以更改每个人的密码。

每个onClick都会调用函数“ ChangePassOpen”,该函数将打开一个带有新密码输入框和另一个按钮的模式,以实际调用该函数来更改密码。

为了使我的程序能够识别管理员正在更改的帐户,我需要将用户名作为参数传递,但是我的用户名包含“。”因为它们由一个姓氏和姓氏组成,例如“ T.Smyth”。但是,这会导致错误,因为程序认为我正在尝试传递两个参数,因此会引发错误。

关于如何克服这一点的任何想法?

    <?php
//Retrieves variables from Javascript.
$Search = $_POST["Search"];
$Type = $_POST["Type"];

if ($Type == "Registration Date"){
    $Type = "joined";
}
else if ($Type == "Account Rank"){
    $Type = "rank";
}

include "db/openlogindb.php";
if($DBError == true){
    $data = 3;
}
else{

    $UserSearch = "SELECT username, surname, forename, joined, rank FROM users 
    WHERE ".$Type." LIKE '%".$Search."%' 
    ORDER BY surname";

    $results = mysqli_query($conn, $UserSearch);

    if(mysqli_num_rows($results) == 0){
        $data = 1;
    }
    else{
        $data = '';

        while($row = mysqli_fetch_assoc($results)){ 
            $data .= '<tr><td>'.$row['surname'].'</td><td>'.$row['forename'].'</td><td>'.$row['username'].'</td><td>'.$row['joined'].'</td><td>'.$row['rank'].'</td><td onClick="ChangePassOpen('.$row['username'].')">Change Password</td></tr>';
        }
    }
}

include "db/closelogindb.php";

echo $data;
?>

http://thomas-smyth.co.uk/admin/manageusers.php

参考方案

您应该更新您的代码

echo '<table><tr><td>'.$row['surname'].'</td><td>'.$row['forename'].'</td><td>'.$row['username'].'</td><td>'.$row['joined'].'</td><td>'.$row['rank'].'</td><td onClick="ChangePassOpen(\''.$row["username"].'\')">Change Password</td></tr></table>';

反斜杠字符()被认为是转义字符。

带有AJAX和DOM处理API的下拉菜单 - javascript

我从API获取数据,但未在我的下拉菜单中显示。如果我用?act=showprovince回显,结果就在那里。example.html<head> <link rel="stylesheet" type="text/css" href="css/normalize.css"> …

尽管刷新,jQuery格式仍未应用于Ajax数据 - javascript

我正在通过GET响应消息从服务器(php文件)的可折叠内部加载列表视图。但是,尽管刷新了jQuery元素,但jQuery格式并未应用于添加的HTML。我的页面在这里:http://i.cs.hku.hk/~hsbashir/Project_Work/events/events.htmlHTML代码(仅相关代码)<script> lastRecor…

使用php重新加载内容 - javascript

在对网站进行编程时,我以前使用过此代码,它可以完美工作,但是现在当我想使用一些Flash部件时,每次单击链接时,它都会重新加载所有网站。源代码: <!DOCTYPE html> <html> <head> <title>Hot King Staff</title> <meta charset=…

用jQuery填充模式形式 - javascript

我正在将订单表从数据库绘制到datatables(jquery插件)中。我要在每笔最后一笔交易或每笔交易中增加付款。问题是,如何获取单击添加付款按钮以添加付款的行的订单ID。其次,当点击addpayment时,它会弹出一个带有字段或订单号的模态表单。我想用在td中找到的订单ID填充该字段,并使其不可编辑或隐藏,但在提交模态表单时将其发布到服务器。表格和模式表…

保留文本区域的数据或值,然后选择输入 - javascript

通过$ _POST提交表单时,输入文件值仍然保留。像这样: if($_POST){ $error = false; if(!$post['price']){ $error = true; $error_note['price'] = "*Should not be empty"; } if($err…