Добавление строки с HTML-кодом - PullRequest
2 голосов
/ 31 марта 2011

Я пытаюсь создать фрагмент, который позже будет вставлен в больший фрагмент кода.

Пока все работает нормально, но есть одна проблема: Я не разобрался, как реализовать 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>';

Ответы [ 5 ]

3 голосов
/ 31 марта 2011

Это скорее проблема синтаксиса Javascript.Часть index.php?day= должна быть строкой, а все после this. является выражением.

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

Кавычки для JS в атрибуте HTML просто нужно \ экранировать, поскольку внешние кавычки для PHPуже одинарные кавычки.

0 голосов
/ 31 марта 2011
 $dayChoser = ' <form name="day"><select ONCHANGE=\'location.href="index.php?day="+this.value;\'>';
0 голосов
/ 31 марта 2011

Вам не хватает кавычек вокруг значения местоположения, которое вы хотите установить.

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

';

0 голосов
/ 31 марта 2011
<select ONCHANGE="location = \'index.php?day=\'+this.options[this.selectedIndex].value;">';
                             ^^              ^^^

Вам нужен путь в кавычках внутри встроенного javascript, а затем объединить его с выбранным значением.

Изменения, обозначенные символом каретки

0 голосов
/ 31 марта 2011

Попробуйте изменить

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

до

<select ONCHANGE="window.location = \'index.php?day=\' + this.options[this.selectedIndex].value">
...