2014-09-13 48 views
1

首先。我不得不在完整的代碼中說這個。http格式的AJAX模塊的url值

形式AJAX是這樣的:

<form enctype="multipart/form-data" method="post" action="#"> 
    <input id="xml<?php echo $id; ?>" type="hidden" name="xml" value=<?php echo $query[$m]['xml']; ?> /> 
    <input id="url<?php echo $id; ?>" type="hidden" name="url" value=<?php echo $query[$m]['id']; ?> /> 
    <a id="<?php echo $id; ?>" class="ajax-btn" href="#"> 
     <p class='wcpf-summary'><?php echo $title; ?></p> 
    </a> 
</form> 

JavaScript是..

var element = $(this); 
var id = element.attr("id"); 
var xml = $("#xml"+id).val(); 
var url = $("#url"+id).val(); 

var dataString = '&xml' + xml + '&url' + url; 

我已經查了Mozilla Firefox的Web開發工具後。 我希望是這樣的:

parameters  value 
url  | http://www.civilreport... 5038 
xml  | http://www.civilreport... 

,但結果是:

parameters       value 
urlhttp://www.civilreport... | (empty) 
xmlhttp://www.civilreport... | (empty) 

我怎樣才能解決這個問題?

+0

[encodeURIComponent](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent) – Musa 2014-09-13 02:16:02

+0

您在dataString中缺少一些等號。試試這個:''var dataString ='&xml ='+ xml +'&url ='+ url;''' – ventaur 2014-09-13 02:18:07

+0

非常感謝ventaur。我的錯。 – 2014-09-13 02:52:19

回答

0

不知道什麼$(this)指向,但你能得到這兩個形式的值輸入另一種方式:

var xml = $('input[name="xml"]').val(); 
var url = $('input[name="url"]').val(); 

不就看到您的更多的代碼對你是如何獲取和發送數據,很難確切地說你的問題在哪裏。

+0

謝謝H. Bedrosian。我解決了它。 – 2014-09-13 02:54:34