希望你能帮助我。
我正在尝试从 javascript 调用 php 函数。
当我将一个值与字符串串联时不起作用,但如果我正确调用该函数,则在不串联的情况下放置一个固定值。
我留下我使用的代码。
我的 Controller 的功能:
function size_make_dropdownlist($size_make_id)
{
$output = "<select id='size_make' name='size_make' style='width:100px;'>";
//$output .= $this->new_option('Seleccionar', '0', $size_make_id);
// $query = $this->car_model->get_car_makes();
$options = array('product_id' => id_clean($size_make_id));
$Q = $this->db->getwhere('omc_product_sizes',$options);
if ($Q->num_rows() > 0){
$query = $Q->row_array();
foreach ($query as $row)
{
$output .= "<option value=".$row['product_id'].">Talla ".$row['size']."</option>";
}
}
$output .= "</select'>";
return ($output);
}
函数 JavaScript
function sizes(product){
var phpcodeis="<?php $size_make_dropdownlist=$this->MProducts->size_make_dropdownlist("+product+"); echo $size_make_dropdownlist; ?>";
//$size_make_dropdownlist=$this->MProducts->size_make_dropdownlist("+product+"); echo $size_make_dropdownlist; ?>"; //When use this line work perfectly but i need the another one
document.getElementById("php_code_size").innerHTML=phpcodeis;
alert(product);
}
HTML 代码
<a href="#"
style="display:block; color:#333; font-family:Tahoma; font-size:12px;"
onclick="sizes(1); return false;"> Sizes 1 </a>
<a href="#"
style="display:block; color:#333; font-family:Tahoma; font-size:12px;"
onclick="sizes(2); return false;"> Sizes 2 </a>
<span id="php_code_size"> </span>
或者其他方法来做到这一点?
我会多理解一点,希望这能帮助我变得更轻松一点。
提前致谢
最佳答案
您应该注意 PHP 在 JavaScript 之前执行。在大多数情况下,您无法使用 JavaScript 生成 PHP 并期望它运行(除非您在后端使用 JavaScript 并通过它与 PHP 建立某种神奇的桥梁)。
您可能想要的是从 JavaScript 发出 XHR (AJAX) 请求,并让 PHP 服务返回纯数据。然后,JavaScript 将从该数据中呈现选项元素,最好是使用 HTML 模板引擎。
关于php - 从 JavaScript 调用带参数的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6302186/