Php 用html代码追加字符串

Php 用html代码追加字符串,php,javascript,html,onchange,Php,Javascript,Html,Onchange,我正在尝试构建一个片段,稍后将插入到更大的代码段中 到目前为止,一切正常,但有一个问题: 我还没有弄明白如何实现ONCHANGE部分。 成功检测到该值,但我没有得到一个很好的index.php?day=23424234组合。我想是关于转义角色的 有人能帮我吗 $dayChoser = ' <form name="day"> <select ONCHANGE="location = index.php?day=this.options[this.selectedIndex

我正在尝试构建一个片段,稍后将插入到更大的代码段中

到目前为止,一切正常,但有一个问题: 我还没有弄明白如何实现ONCHANGE部分。 成功检测到该值,但我没有得到一个很好的index.php?day=23424234组合。我想是关于转义角色的

有人能帮我吗

    $dayChoser = ' <form name="day">
<select ONCHANGE="location = index.php?day=this.options[this.selectedIndex].value;">
';
    foreach ($tageArray as $ts) {
        $tempDay = date('m/d/Y', $ts);
        $dayChoser.='<option value=' . $ts . '>' . $tempDay . '</option>';
    }
    $dayChoser.='</select> </form>';
$dayChoser='1〕
';
foreach($tagarray作为$ts){
$tempDay=日期($m/d/Y',$ts);
$dayChoser.=''.$tempDay'.';
}
$dayChoser.='';

这更像是一个Javascript语法问题。
index.php?day=
部分应该是一个字符串,
this.
后面的所有内容都是一个表达式

$dayChoser = ' <form name="day">
    <select ONCHANGE="document.location = \'index.php?day=\' + this.options[this.selectedIndex].value;">
';
$dayChoser='1〕
';
HTML属性中JS的引号只需要\escape,因为PHP的外部引号已经是单引号。

尝试更改

<select ONCHANGE="location = index.php?day=this.options[this.selectedIndex].value;">


”;
^^              ^^^
您需要在内嵌javascript中使用引号括起路径,然后让它连接所选值


用插入符号表示的更改

要设置的位置值周围缺少引号

$dayChoser = ' <form name="day"><select ONCHANGE="location = \'index.php?day=\' + this.options[this.selectedIndex].value + \';\'">
$dayChoser='1〕
",

$dayChoser='';

什么是$tagarray变量?猜猜是什么阵列吧?@Wh1T3h4Ck5-我想$tageArray可能是一头大象p可能是任何数据类型,甚至没有声明,我不知道它是什么,所以我只是猜测。因为它已经在foreach中使用过,但这并不意味着它是数组类型,或者可能我没有看到一些东西。您仍然忘记了将引用的文本分解。
<select ONCHANGE="location = \'index.php?day=\'+this.options[this.selectedIndex].value;">';
                             ^^              ^^^
$dayChoser = ' <form name="day"><select ONCHANGE="location = \'index.php?day=\' + this.options[this.selectedIndex].value + \';\'">
 $dayChoser = ' <form name="day"><select ONCHANGE=\'location.href="index.php?day="+this.value;\'>';