2013-10-14 37 views
12

Herhangi bir konuda fikir sahibi olan var mı? Sadece gönderdim kod için gerekli oldu. Temelde bir HTML formu var Ben bir ajax çağrı çalıştırmak ve başka bir alan doldurun gönderilmeden önce bir formdaki bir alandan değer çekmek istiyorum. Modcreate.php üzerindeki bir PHP değişkenine formda girilen Txt'yi alabilseydim işe yarayacak diye düşünüyorum. çünkü detayları el değiştirmeden el ile girersem çalışır.AJAX çağrısı ile PHP değişkenine form değeri nasıl iletilir?

mainpage.php

şeklinde

<tr> 
    <th>Service Tag:</th> 
    <th><input type="text" id="inputTag" name="inputTag" value="" onblur="this.value=this.value.toUpperCase()"></td> 
    </tr> 

ve

<tr> 
    <th>Model:</th> 
    <th> 
     <input type="text" id="inputModel" name="inputModel" value=""> 
     <a href="#" id="updateBtn">Populate</a> 
     <div id="spinner"> 
      <img src="\images\ajax-load.gif" alt="Loading..."/> 
     </div> 
    </th> 
    </tr> 


<script type="text/javascript" src="\js\jquery-latest.js"></script> 
<script type="text/javascript"> 
$('#updateBtn').click(function(e) { 
    //to disable the click from going to next page 
    e.preventDefault(); 
    $.ajax({ 
     url: "modcreate.php", 
     data: { 'txt1': $('#inputTag').val() }, 
     success: function(data) { 
     } 
    }); 
}); 
</script> 

modcreate.php

<?php 

$field1value = $_GET['txt1']; 
    $file_string = file_get_contents('blahblah.com/'.$field1value); 
    preg_match("/<title>Product Support for (.+)\| Dell/i", $file_string, $matches); 
    $print = "$matches[1]"; 
    echo $print; 
?> 

****** çözeltiden

Buradan ilgili kısımlar, *** *** aja'm x çağrı bu form alanına burada

geri verileri gönderilen kısmını eksik çalışma ajax Sunucu tarafında

<script type="text/javascript" src="\js\jquery-latest.js"></script> 
<script type="text/javascript"> 
$('#updateBtn').click(function(e){ 
    //to disable the click from going to next page 
    e.preventDefault(); 
    $.ajax({ 
     url: "modcreate.php", 
     data: { 'txt1': $('#inputTag').val() }, 
     success: function(data) { 
      $('#inputModel').val(data); //this was the missing part 
     } 
    }); 
}); 
</script> 
+0

Doğrudan buraya giderseniz modcreate.php size sonuç verir mi? (örn .: modcreate.php'ye gidin? txt1 = birşeyler – Joao

+0

AJAX yönteminizi tanımlamanız gerekir: type: "POST" veya "type:" GET " –

+1

@AdamZapp - jQuery varsayılanları" GET "- gerekli değildir –

cevap

1
<script type="text/javascript"> 
$('#updateBtn').click(function(e){ 
    //to disable the click from going to next page 
    e.preventDefault(); 
    $.ajax({ 
      url: "modcreate.php", 
      data: 'data="{ "txt1": '+$('#inputTag').val()+' }"', 
      success: function(data){ 


      } 
    } 
); 
}); 
</script> 

tüm işaretçiler üzere hemen teşekkürler çocuklar gibi görünür:

$income_data = json_decode($_GET['data'], true); 
$field1value = $income_data['txt1']; 
+0

Teşekkür ederim, ancak bunu $ ('# inputModel') ekleyerek görmeden önce çalıştım, val (data); ajax başarımdan sonra. Sağladığınız kodla çalışıp çalışmadığından emin değilim, ancak çalışmakta olduğum kodla ilgili sorunlarımda çalışmaya devam edeceğim. Gönderdiğiniz yöntemin, çalışma koduma göre avantajları olmadığı sürece? – user1548769

+0

"$ field1value = $ income_data ['txt1'] '' sonundaki noktalı virgül eksik Not Sonuncusuna yerleştirilmek için' '' – thefoxrocks

+0

@ McLean25 teşekkürler, sabit –

İlgili konular