-1

PHPを使用して変数を定義するためにJavaScriptを修正しようとしています。変数には、クライアントによってレンダリングされる必要がある小さなjQueryが含まれています。私は「すべき」と言いますが、本当にそれを望んでいるという意味です。o2をo1と同じにする(つまり、jQueryを隠す)にはどうすればよいですか?

ありがとうございました!

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" /> 
<title></title> 
<script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script> 
<script>
$(function() {
    var o1={"foo":{"bar": "abc/index.php?="+$("#id").val()}};
    console.log(o1);
<?php
$d='abc/index.php';
$json='{"foo":{"bar": "'.$d.'?id=\"+$(\"#id\").val()"}}';
//echo($json);
$json=json_decode($json);
//echo(print_r($json,1));
$json=json_encode($json);
//echo($json);

echo("var o2=".$json.";");
?>

console.log(o2);
});

</script>

</head>

<body>
<input type="hidden" id="id" value="123" />
</body> 
</html> 
4

3 に答える 3

0

テストされていません。エラーが含まれている可能性があります。

<script>
$(function() {
    var o1={"foo":{"bar": "abc/index.php?="+$("#id").val()}};
    console.log(o1);

    <?php
    $d='abc/index.php';
    $json='{"foo":{"bar": "' . $d . '?="+$("#id").val()}}';

    echo("var o2=".$json.';');
    ?>

    console.log(o2);
});
</script>
于 2012-05-20T23:14:02.990 に答える
0

jsonの解析と検証に関する予期しない問題を回避するために、json_encodeを使用してjsonを作成することをお勧めします。

json_encodeとjson_decodeはUTF-8でのみ機能します。特別な文字がある場合、別の文字セットは空白の文字列になります。

<script>
<?php

$d = "abc/index.php";
$json['foo']['bar'] = $d . '?id=$("#id").val()';

echo "var o2 = ".json_encode($json);

?>
console.log(o2);
</script>
于 2012-05-20T23:47:09.913 に答える
0

あなたはこれを持っています:

<input type="hidden" id="id" value="123" />

だから私はあなたがdbからそのIDを取得していると仮定できますか?多分このように:

<input type="hidden" id="id" value="<?php echo $row[id];?>" />

これが事実である場合、以下を実行してください(私はテストして動作します):

あなたはそれをするために隠された入力を必要としません。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" /> 
<title></title> 
<script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script> 
<script>
$(function() {

    <?php
        //From your SQL query you obtained
        //$row['id'] = 123;
        $id = $row['id'];
    ?>

    var o1={"foo":{"bar": "abc/index.php?=" + <?php echo $id ?>}};
    console.log(o1);

    <?php
    $d='abc/index.php';
    $json='{"foo":{"bar": "'.$d.'?='.$id.'"}}';
    //echo($json);
    $json=json_decode($json);
    //echo(print_r($json,1));
    $json=json_encode($json);
    //echo($json);
    echo("var o2=".$json.';');
    ?>

    console.log(o2);
});
</script>
</head>
<body>
</body> 
</html>
于 2012-05-20T23:48:51.070 に答える