我建立一個@mention劇本,我被困在一個小問題。從點擊獲取用戶名插入到數據庫
所以每個用戶選擇,然後用戶點擊該用戶,並將其添加的用戶名進入newmsg格,然後你也可以寫一些文字,就像一個狀態,你會發現在Twitter或Facebook。像這樣。我現在也在使用舊的jquery'live',但很快就會改變。
$(".addname").live("click",function()
{
var username=$(this).attr('title');
var old=$("#newmsg").html();
var contents=old.replace(word,"");
$("#newmsg").html(contents);
var E="<a class='red' contenteditable='false' href='/profile.php?username="+username+"'>"+username+"</a>";
$("#newmsg").append(E);
$("#display").hide();
$("#newmsg").focus();
我想然後以某種方式獲取用戶名,以便能夠將其添加到我的插入,所以我可以把它作爲一個鏈接插入時的ajax開機自檢。
$(document).ready(function(){
$("form#myforms").submit(function(event) {
event.preventDefault();
var content = $(this).children("#toid").val();
var newmsg= $(this).children('#newmsg').text();
var USERNAME HERE= ??;
var privacy = $("#privacy").val();
$.ajax({
type: "POST",
url: "insert.php",
cache: false,
dataType: "json",
data: { toid: content, newmsg: newmsg, privacy: privacy, USERNAME HERE },
這裏是我在insert.php中用來將@username轉換爲鏈接的鏈接。請注意下面我的$ _POSTvariables沒有被消毒,並且容易受到SQL注入的影響。但這將得到糾正。
$_POST['newmsg']=str_replace('@','<a href="profile.php?username='.$_POST['username'].'">'.$_POST['username'].'</a>',$_POST['newmsg']);
我嘗試使用
var username = $(this).children(".addname").val();
,但它表示,這是不確定的。
下面是HTML時將被選擇爲可用的用戶的用戶檢查並點擊它們。
<div class="display_box "align="left">
<? echo "<img class='image' style='border:none;padding:0px;display:inline;' border=\"0\" src=\"userimages/cropped".$id.".jpg\" onerror='this.src=\"userimages/no_profile_img.jpeg\"' width=\"40\" height=\"40\" >"; ?>
<a href="#" class='addname' title='<?php echo $username; ?>'><?php echo $fname." ".$lname; ?></a>
</div>
</br>
提供所請求提供選擇的用戶鏈路的HTML先生 – 2014-09-28 14:06:49
@jQueryAngryBird HTML。 – dave 2014-09-28 14:09:43
.addname css ??? – 2014-09-28 14:10:33