Intereting Posts
Комплексные запросы к базе данных в yii2 с активной записью Функция проверки подлинности в jQuery никогда не делает вызов ajax PHP 5: Какие DAL вы используете? Изменение текущего часового пояса пользователя на основе смещения UTC сервера и смещения UTC пользователя Запуск сценария командной строки в фоновом режиме переходит в состояние остановки загрузка с помощью SFTP: CURLOPT_SSLKEY не используется Laravel 4, Несколько полиморфных отношений от одной модели Получить титул веб-сайта по ссылке Php.Advance еженедельный календарь на неделю Запретить URL-адрес URL-адреса из htaccess rewrite как получить динамический URL-адрес, например mydomain.com/username, используя zend framework PHPMailer – SMTP ERROR: команда паролей не удалась при отправке почты с моего сервера Самый эффективный способ кодирования дружественных URL-адресов для SEO? отправлять электронную почту с вложением с помощью jquery ajax и php Лучший способ подсчитать количество загрузок нескольких файлов на веб-сайте

Как я могу использовать идентификатор ввода Box от PHP до JavaScript?

Моя функция JavaScript работает отлично, но у меня проблемы с получением разных идентификаторов из поля ввода PHP.

JavaScript

window.onload = function() { new JsDatePick({ useMode:2, target:"inputField1", //HERE I WOULD LIKE TO PASS DIFFERENT ID ex. "inputField1"+ "i" dateFormat:"%Y-%M-%d", yearsRange:[1978,2120], limitToToday:false, cellColorScheme:"beige", imgPath:"main/img/", weekStartDay:1 }); 

Мое поле ввода PHP для цикла

 <div class = "start_date" > <strong><label for="start_date">Start Date</label></strong> <br/><br/> <?php for($k=1;$k<=$textboxindex;$k++) { echo "<input type=\"text\" class='textboxsize' id= \"inputField1\" name=\"start_date[]\" value=\"$start_date\" />"; echo "<br/>"; } ?> </div> 

Он работает отлично, но я хотел бы иметь разные идентификаторы имен для использования в функции JavaScript. Есть идеи?

Это не работает …

 echo "<input type=\"text\" class='textboxsize' id= \"inputField+$k\" name=\"start_date[]\" value=\"$start_date\" />"; 

Любая помощь будет оценена.

Скорее всего, JsDatePick виджет JsDatePick . Его target параметр принимает один идентификатор элемента, поэтому вам придется обернуть JS-код в цикле и инициировать отдельный экземпляр виджета для каждого идентификатора поля.

Предполагая, что индексирование поля ввода начинается с 1:

 window.onload = function() { var i = <?=$totalNumberOfInputs;?> for(j=1;j<=i;j++) { new JsDatePick({ useMode:2, target:"inputField" + j, //HERE I WOULD LIKE TO PASS DIFFERENT ID ex. "inputField1" + j dateFormat:"%Y-%M-%d", yearsRange:[1978,2120], limitToToday:false, cellColorScheme:"beige", imgPath:"main/img/", weekStartDay:1 }); } } 

Вам не нужно помещать знак + в конкатенацию строк в двойных кавычках (это точка, между прочим).

Изменить:

 id= \"inputField+$k\" name=... 

Для того, чтобы:

 id=\"inputfield$k\" name=... 

То, что это завинчивается, это знак «+». PHP использует "." для конкатенации строк. ECHO из $k правильно, и у вас не должно быть никаких проблем

  //this is doesn't work echo "<input type=\"text\" class='textboxsize' id= \"inputField$k\" name=\"start_date[]\" value=\"$start_date\" />"; 

просто удалите этот знак + .