Добавление значения из поля в функцию JavaScript - PullRequest
0 голосов
/ 20 декабря 2011

У меня есть функция JavaScript checkStatus(), которая принимает четыре аргумента bus_company_name,bus_id,bus_time и bus_date. Первые три аргумента поступают из базы данных, но четвертый вводится пользователем. Для этого я написал HTML как:

{foreach name = feach item = k from = $allBuses}
        <p>
        {$k->bus_company_name}<br />
        A/C {$k->bus_is_ac}<br />
        Date : <input type="text" name="date" id="dt" />yyyy/mm/dd

        <a href="javascript:checkStatus('{$k->bus_company_name}','{$k->bus_id}','{$k->bus_time}',jrny_date)">Status</a>
        </p>
  {/foreach}

Я хочу jrny_date из типа ввода с идентификатором date. Как я могу это реализовать?

Ответы [ 2 ]

2 голосов
/ 20 декабря 2011

Если вы используете это, вы передадите значение элемента как параметр.

javascript:checkStatus('{$k->bus_company_name}','{$k->bus_id}','{$k->bus_time}',document.getElementById('dt').value)

Но вы также можете попасть внутрь функции checkStatus.

1 голос
/ 20 декабря 2011

Поскольку вы просматриваете список элементов, я бы рекомендовал использовать текущий индекс на каждой итерации для создания уникального идентификатора даты. Затем вы можете передать это в свой скрипт и получить значение элемента по ID:

{foreach name = feach key = i item = k from = $allBuses}
        {$k->bus_company_name}<br />
        A/C {$k->bus_is_ac}<br />
        Date : <input type="text" name="date" id="dt_{$i}" />yyyy/mm/dd

        <a href="javascript:checkStatus('{$k->bus_company_name}','{$k->bus_id}','{$k->bus_time}','dt_{$i}')">Status</a>
{/foreach}

<script>
    function checkStatus(name, id, time, date_id){
        var date = document.getElementById(date_id);
        if(date){
            alert(date.value);
            // Do something fancy with the date
        } 
    }
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...