2015-05-20 5 views
-1

У меня есть 2 выпадающие списки и я хочу передать выбранное значение для anoither PHP с помощью AJAX проблема в том, что, как можно передать буксирные Воулс в одной функциикак передать PHP переменные функции яваскрипта

<script> 
function showUser(str,str2) { 
    if (str == "" ||str2 =="") { 
     document.getElementById("txtHint").innerHTML = ""; 
     return; 
    } else { 
     if (window.XMLHttpRequest) { 
      // code for IE7+, Firefox, Chrome, Opera, Safari 
      xmlhttp = new XMLHttpRequest(); 
     } else { 
      // code for IE6, IE5 
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
     } 
     xmlhttp.onreadystatechange = function() { 
      if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
       document.getElementById("txtHint").innerHTML = xmlhttp.responseText; 
      } 
     } 
     xmlhttp.open("GET","cg_comboBox.php?q="+str+"&p="+str2,true); 
     xmlhttp.send(); 
    } 
} 
</script> 

<script> 
function fun(v) 
{ 
     document.getElementById("xxx").innerHTML = v;  
} 

</script> 

HTML

<div class="form-group"> 
     <label for="GroupName" class="col-sm-2 control-label">Movie Name</label> 
    <div class="col-md-2"> 
    <select class="combobox" width="200" style="width: 200px" name="mov" id="mov" onchange="fun(this.value)"> 
    <option value="">Select Movie </option> 
     <?php //code ?> 

    </select> 
      <br> 
</div> 



<label for="GroupName" class="col-sm-2 control-label">Group Name</label> 
<div class="col-md-2"> 
     <?php $x = "<div id=\"xxx\" name=\"xxx\" ><b></b></div>"; 
     //echo $x; ?> 

    <select class="combobox" width="200" style="width: 200px" onchange="showUser(this.value,x)" id='x'> 
     <option value="">Select Cinema Group</option> 
     <?php //code ?> 

    </select> 

я хочу добавить $ й значения в качестве второго параметра, но как?

ответ

0

Это должно решить вашу проблему:

onchange="showUser(this.value,'"+<?php echo $x; ?>+"')" 
+0

Я пробовал, но он не работает –

+0

Я внес некоторые изменения, попробуйте. –

+0

все еще не работает :( –

0

Ваша проблема, скорее всего, что вы назвали ваш скрипт с расширением HTML или HTM. Назовите свой файл сценария расширением PHP, а не расширением HTML. Это распространенная проблема.

После того, как вы сделаете это, то решения, которые разместили другие будут работать, например:

<?php $x = 'something!'; ?> 
onchange="showUser(this.value,'"+<?php echo $x; ?>+"')" 

Сначала назначьте значение Fo $ х, а затем использовать значение в JavaScript.

Если ваш .js файл является статическим, а не выводятся на PHP, то ваш выход PHP переменная динамическое определение следующим образом:

var myvar = <?php echo $x; ?>; 

И в вашей HTML странице использовать переменную следующим образом:

onchange="showUser(this.value, myvar);" 

Это должно быть сделано! :)

+0

мое расширение php, проблема в том, как я могу присвоить значение $ x, потому что у меня есть onchange = "fun (this.value), чтобы отправить значение первого combox, так что проблема здесь:

"; "; // echo $ x;?> –

+0

Когда вы выводите код с PHP, у вас есть абсолютная власть над кодом Javascript, который он выводит. Пробуйте, что говорит мое редактирование. – Brian

+0

Подождите, я думаю, что получаю что ваша проблема, ваш код javascript находится в другом файле, чем PHP-код? В этом случае вам нужно определить переменную в вашем основном модуле! и использовать эту переменную в своем дополнительном модуле! Подождите минутку e я отредактирую код ... – Brian

Смежные вопросы