2012-02-12 11 views
0
<script language='javascript' type='text/javascript' charset='<?=$page_charset?>'> 
    $(document).ready(function(){ 

     $('#btn_login').click(function(){ 
      $.search_keyword(); 
     }); 
    }); 

私はphp言語でajaxスクリプトを通して完全なデータを送ることができません。 (コードイグナイタ)

は、ここではスクリプト

<form name='frm_search_keyword'> 
<table style='width:250px;'> 
    <tr> 
     <td style='width:100px;'> 
      Search 
     </td> 
     <td> 
      <input type="text" name="web_keyword" /> 
     </td> 
     <td> 
      <input type="submit" id="btn_login" name="btn_login" value="search!" /> 
     </td> 
    </tr> 
</table> 
</form> 

は、こちらのフォーム

search_keyword:function(type) 
{ 
    $.ajax({ 
     type: 'POST', 
     url: '/web_keyword', 
     data: {'b_type':type}, 
     cache: false, 
     async: false, 
     success: function(result){ 
      if(result == 12001) 
      { 
       alert('please choose your interest.'); 
       location.href = '/account/interest'; 
      }else 
       location.href = '/'+type+'/'+result; 
     } 
    }); 
} 

は、それが正常にDBクエリに 'web_keyword' を送信し、結果を得ることです。 しかし、私はajaxスクリプトで型データを取得することはできません。 フォームテーブルからajaxスクリプトにデータを入力する手助けができますか?

ありがとうございます。

+2

methong seach_keywork()を呼び出すときに、そこにタイプがないと思われますか?あなたは "タイプ"を期待していますか?タイプはどこに来ると思われますか –

答えて

0

私はこれが問題である場合は、正確にはわからないが、それは疑わしいです:

$('#btn_login').click(function(){ 
     $.search_keyword(); 
    }); 

はどこに「タイプ」から来ることになっていますか? 「タイプ」とは何ですか? "type"はDBクエリから返された値ですか?または、ユーザーが検索を実行するときに選択したものですか?

typeがフォーム要素内にある場合は、JavascriptまたはjQueryなどを使用してその値をページから取得し、そのデータをAJAX機能に渡す必要があります。

$('#btn_login').click(function(){ 
     //First get the "type" value, for example if "type" is retrieved from the form element 
     var type = $('#btn_login').attr('type'); //this is for example's sake, since you did not assign an id to this form element... 
     search_keyword(type); 
    }); 

あなたはちょうどそれが生成され、および/または保存され、あなたのAJAX機能に渡しされている場合、これまでの「タイプ」を取得する必要があります。

また、多分これは無関係ですが、あなたの "SEARCH_KEYWORD()" 関数の定義は、私には奇妙に見える...

の代わりに:

search_keyword:function(type){...} 

は次のようになります。

search_keyword = function(type){...} 

最後に、使用しているJavascriptライブラリを教えてください。

" dataType: 'json'," like 


    $.ajax({ 
     type: 'POST', 
     url: '/web_keyword', 
    dataType: 'json', 
     data: {'b_type':type}, 
    }); 

を追加

0

試してみて、

$data['return1']='true'; 
echo json_encode($data); 


     success: function(result){ 
      if(result.return1 == 12001) 
      { 
       alert('please choose your interest.'); 
       location.href = '/account/interest'; 
      }else 
       location.href = '/'+type+'/'+result; 
     } 

を使用して日付を返しますが、非同期削除する必要があります。このオプションをfalseに設定する偽

を、それはブラウザの原因となりますので、強く、推奨され応答しなくなる。

関連する問題