У меня есть эта часть кода в контроллере CodeIgniter под названием «ajaxcalls»:Нажмите на кнопку, чтобы изменить текст ввода текста
public function show_contact_persons($client_id) {
$data['contact_persons'] = $this->common_model->select_records('ci_contact_persons', 'client_id', $client_id);
//dump($data);
function echoArray ($array) {
foreach ($array as $key => $value)
{
if (true == is_array($value))
{
echoArray($value);
}
else
{
if ($key == 'contact_person_name') {
echo '<input type="button" value="'.$value.'" onclick="changeContact(987)" /><br />';
}
}
}
}
echoArray($data);
}
, а затем JS часть на странице, которая звонит файл PHP:
function changeContact(contact_name) {
document.getElementById('contact_person').value = contact_name;
}
В этом примере я помещал номер «987», потому что код работает только с NUMBERS. Когда я положил текст в скобки, или то, что я действительно хочу сделать:
onclick="changeContact('.$value.')"
то скрипт не работает. ТОЛЬКО с цифрами. Что я должен изменить, чтобы заставить его работать со строками?
положенных цитаты вокруг вара вы переходящий в 'changeContact()' в противном случае он будет отображаться как 'changeContact (thisIsUndefined) 'который работает для int, но не как строка с котировками, потому что тогда JS связывает его как ранее определенную переменную – Pogrindis