2015-03-25 6 views
1

У меня есть запрос ajax для сохранения моего почтового шаблона в базе данных. Однако я не могу отправить свой div с запросом ajax? Я искал в Интернете в течение 2 часов в настоящее время, но я не смог найти решениеЗапрос Ajax JQuery Отправка div

Аякса файл:

function saveEmail(){ 
    var mail3 = $jQ('templateContent'); 
    $jQ.ajax({ 
     method: 'POST', 
     url: 'ajax/saveMail.php', 
     data: {mail2: mail3.html(), test: "test"} 
    }).done(function(data) { 
     console.log(data); 
    }); 

} 

saveMail.php:

echo '<pre>'; 
print_r($_POST); 
echo '</pre>'; 

exit(); 

Единственное значение POST я получаю тестовый пример:

<pre>Array 
    (
     [test] => test 
    ) 
    </pre> 

некоторые полезная информация:

mail3 = `[prevObject: jQuery.fn.jQuery.init[1], context: document, selector: "templateContent", jquery: "1.10.2", constructor: function…]` 
+0

Можете ли вы показать, что waht находится в mail3.html()? –

+0

mail3 - переменная, которая находится в строке 2 ('$ jQ (' templateContent ');'). Это базовый шаблон html, который преобразуется в элемент html функцией .html(). – Tosfera

+0

Ну его неопределенный atm, но mail3 = [prevObject: jQuery.fn.jQuery.init [1], контекст: документ, селектор: "templateContent ", jquery:" 1.10.2 ", constructor: function ...] возможно, скрипт терпит неудачу, потому что его объект? – Flidiot

ответ

3
var mail3 = $jQ('templateContent'); 

Должно быть что-то вроде
$jQ('.templateContent'); или $jQ('#templateContent');

+1

WOW thx это lame error .... xD – Flidiot

+0

Добро пожаловать @Flidiot – DhirendraBisht

1

Вы забыли использовать templateContent как элемент class или id

Try использовать .templateContent или #templateContent.

Вы можете получить содержимое элемента, используя его id или class.

+0

Да, такая хромая ошибка, user4328056 сказал это Thx в любом случае! – Flidiot

0

Ниже приведено содержимое div в вызове данных ajax. Обратите внимание на селектор jquery для div i.e. Var dataToSend = $ ("# templateContent"). Text();

<!DOCTYPE html> 
<html> 
<head> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>  
<script> 
function myFunction() { 
    var dataToSend = $("#templateContent").text(); 
    alert(dataToSend); 
    $.ajax({ 
     method: 'POST', 
     url: 'ajax/saveMail.php', 
     data: {mail2: dataToSend, test: "test"} 
    }).done(function(data) { 
     console.log(data); 
    }); 
} 
</script> 
</head> 
<body> 

<p>Click the button to trigger a function that will output "Hello World" in a p element with id="demo".</p> 

<button onclick="myFunction()">Click me</button> 

<div id="templateContent"><span><p>This is supposed to be sent in email!</P><span></div> 



</body> 
</html> 
Смежные вопросы