0

これが状況です。別のユーザーにメッセージを送信できるJavaScriptポップアップがあります。ユーザーが現在のページにとどまりながらメッセージを送信できるようにしたいので、フォームを使用していません。だから私がやっていることは、php変数を呼び出し関数にエコーアウトし、ユーザーが送信ボタン(id = mbutton)を押すと送信されます

JavaScript関数に移動して、渡された変数を警告すると、すぐに正常に警告されますが、ifステートメントを通過した後は「未定義」になります。

以下のコードからわかるように、私は 2 つのアラートをセットアップしています。なぜこれが起こっているのか誰にも説明できますか?

<div id="msgcont">
    <div id="msgheader">
        <span>Send a Message to <? if($array['login']!=$c_log['login']) { echo 
$array['login']; } ?> - Remember to be curtious! </span>
    </div>
    <div id="msgclose" onMouseDown="butclick('message', 'submit')"><span>X</span></div>
    <textarea id="msg"></textarea>
    <div id="mbutton" onMouseUP="butclick('send', 'submit', '<? 
if($array['login']!=$c_log) { echo $array['login']; } ?>')" 
onMouseDown="butclick('send', 'down')">Send</div>
</div>

function butclick(but, action, sentFrom) {
    alert(sentFrom);
    if(but=='send') { 
        alert(sentFrom);
        x = document.getElementById('msg').value;
        if(x==null || x=="") { alert("Please Enter your message before attemping to 
send"); } else { }
    }
}
4

2 に答える 2

0

わかりましたので、なぜこれが起こっているのかわかりませんが、それを機能させる方法を見つけました。以下のコードを見ると、onMouseUP と onMouseDown の両方があります... butclick 関数呼び出しを onMouseDown から onMouseUP に移動しましたが、問題なく動作しているようです....説明を求めないでください...ちょうどです。

<div id="mbutton" onMouseUP="butclick('send', 'submit', '<? if($array['login']!=$c_log) { 
echo $array['login']; } ?>')" onMouseDown="butclick('send', 'down')">Send</div>
于 2013-01-08T02:00:14.983 に答える
0

ここでのこのステートメントは正しくないようです。

if($array['login']!=$c_log) { echo $array['login']; } ?>')" 

一方、比較していますが、比較$array['login']!=$c_logする前に数行しかありません: $array['login']!=$c_log['login'].

これにより$c_log、配列として、$array['login'](文字列) と$c_log(配列) の比較は常に競合すると思います。

于 2013-01-07T02:52:37.280 に答える