2015-07-28 2 views
-2

Вот мой код. Я хочу, чтобы код jQuery передавал значение поля выбора для отправки по определенному URL-адресу при выборе без обновления страницы, чтобы я мог использовать это значение в запросе на определенной странице.Как передать выпадающее выбранное значение через jquery

<?php include "datalink.php"; ?> 
 
    <link rel="stylesheet" href="css/jquery-ui.css"> 
 
    <script src="js/jquery-1.10.2.js"></script> 
 
    <script src="js/jquery-ui.js"></script> 
 
    <script> 
 
    $(function() { 
 
    $("#q").autocomplete({ 
 
    source: "dropdown.php", 
 
    minLength: 2, 
 
    select: function(event,ui){ 
 
    $("#qid").val(ui.item.id); 
 
    } 
 
    }); 
 

 
\t 
 
    $("#tabs").tabs({ 
 
     collapsible: true 
 
    }); 
 
\t }); 
 

 
function validatebankForm() { 
 
    var x = document.getElementById("qid").value; 
 
    if(x == 'null') 
 
    { 
 
    alert('Please select an option from list'); 
 
    return false; 
 
    } 
 
} 
 
</script> 
 
<style> 
 
    .ui-autocomplete { 
 
    max-height: 100px; 
 
    overflow-y: auto; 
 
    /* prevent horizontal scrollbar */ 
 
    overflow-x: hidden; 
 
    text-align:left; 
 
    } 
 
    /* IE 6 doesn't support max-height 
 
    * we use height instead, but this forces the menu to always be this tall 
 
    */ 
 
    * html .ui-autocomplete { 
 
    height: 100px; 
 
    } 
 
    .ui-autocomplete.ui-widget { 
 
    font-size: 11px; 
 
    } 
 
    .ui-tabs .ui-tabs-nav li a {font-size:12px !important; font-weight:bold;} 
 
    #tabs-1{font-size: 12px !important;} 
 
     
 
    </style> 
 
    <div id="tabs"> 
 
<div id="tabs-1"> 
 
<p>  
 
<table width="100%" style="text-align:center;"><tr><td> 
 
<form action="search.php" onsubmit="return validateForm()"> 
 
    <?php 
 
    $query = "SELECT distinct area FROM goa"; 
 
    $result = mysql_query($query); 
 
    ?> 
 
    <select name="area" id="area" style="width:180px; max-width:90%;"> <?php while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) { ?> 
 
    <option name="area" id="area" value="<?php echo $line['area'];?>"> <?php echo $line['area'];?> </option> 
 
    <?php } ?> 
 
    </select> 
 

 
    <input type="text" onblur="if (this.value=='') this.value=this.defaultValue" onclick="if (this.defaultValue==this.value) this.value=''" name="q" id="q" placeholder="Search Company | Service | Product...." style="width:300px; max-width:90%;"> 
 
<input type="hidden" id="qid" name="qid" value="null"> 
 
<input type="submit" value="Search"> 
 
</form> 
 
</td></tr></table> 
 
</p> 
 
</div> 
 
</div>

+0

что делает 'console.log (ui.item.id)' 'печатает в select' .. это должно быть выбранное вами значение ... вы можете сделать AJAX-вызов там – Umair

+0

Как уже говорилось, правильным способом будет Ajax. Но я хотел бы посмотреть, что вы пробовали, прежде чем попросить нас помочь вам. Stack Overflow - это веб-сайт для программистов и энтузиастов, чтобы помочь друг другу, когда это необходимо. Это не бесплатный ресурс, чтобы заставить программистов выполнять свою работу за вас. – icecub

ответ

-1

Попробуйте использовать Ajax с jquery. Вот некоторая документация: http://api.jquery.com/jquery.ajax/

Обратите внимание, что mysql больше не поддерживается. Попробуйте использовать PDO или mysqli вместо

+1

Хотя это правильная точка в правильном направлении, это НЕ ответ на вопрос пользователей. Поэтому вместо этого это должен быть комментарий. – icecub

+0

Извините за недоразумение, я не думаю, что вопрос был действительно конкретным. Я думал, что он хочет знать, как это сделать. Поскольку он, очевидно, не искал его или не пытался что-то сам в этом направлении. – Nytrix

+0

Не нужно приговаривать. Я предпочитаю видеть, как вы пытаетесь и ошибаетесь, вместо того чтобы ничего не делать. Я не был тем, кто отказался от вашего ответа. Я просто дал вам объяснение, что с ним не так, чтобы вы могли улучшить. – icecub

0

Вы можете сериализовать вы формируете и сделать запрос POST с помощью AJAX:

$("form").submit(function(event) { 
    var data = $(this).serialize(); 

    $.ajax({ 
     type: "POST", 
     dataType: "json", 
     url: "url", 
     data: data, 
     success: function(data) { 
      //something   
     } 
    }); 

    return false; 
} 
+0

какой будет php-код для извлечения данных ..... на requried page url ..... например .... $ x = $ _ post ['value']; .... я хочу хранить выборка данных в переменной, чтобы я мог использовать этот запрос .... – Preetam

+0

@Preetam Ваше 'select' name - это« область ». Итак, на целевой странице php вы можете получить доступ к значению с помощью: '$ area = $ _POST ['area'];' – akasummer

+0

вот мой скрипт ....... $ (document) .ready (function() { . \t $ ("площадь") представить (функция (событие) { вар данных = $ (это) .serialize(); $ .ajax ({ типа: "POST", DATATYPE: "JSON" {. $ ("# площадь") HTML (данные); }, URL: "dropdown.php", данные: {id1:: идентификатор}, успеха функция (данные) }); \t \t \t \t return false; } }); , но я получаю сообщение об ошибке ............. Неопределенный индекс: id1 в C: \ xampp \ htdocs \ E \ box.php в строке 2 – Preetam

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