一直在寻找几个小时如何排序,我正处于哭泣的边缘,所以花时间去寻求帮助。它应该很简单,但我显然遗漏了一些东西。
我想从textarea中获取文本,然后使用textarea文本执行MySQL更新。我正在使用PHP和jQuery。
通常,我在php中使用$ _post但是,我使用jQuery来显示模态弹出窗口。我想要运行MySQL更新代码,然后模式弹出窗口将显示一些说“已保存”的文本。简单。
所有代码都运行正常,但我无法获取文本。这显然非常关键。
那么如何从textarea获取文本?
形式:
<form name = "editProfile">
<textarea rows="2" cols="20" name="bio" id="bio">
Some text.
</textarea>
</form>
Php代码
<?php
$bio = TEXT FROM TEXTAREA;
$sql="Update members SET bio = '$bio' WHERE memberID='$memberID'";
$result=mysql_query($sql);
echo ("Profile Update Sucesful");
?>
那个bio.text位就是你在asp.net中的表现....
上面的表格没有使用方法/动作,事实上可能不需要“形式”标签,因为我只需要textarea。模态由链接启动。
请帮忙(请耐心等待我)。如果您需要更多信息,请告诉我们。不要喊。我是新人。
答案 0 :(得分:2)
要从jquery中的textarea获取文本,我总是使用以下内容:
<textarea id="textareaOfInterest">some value</textarea>
<script>
$('#textareaOfInterest').val();
</script>
您的其余代码应如下所示:
<textarea id="textareaOfInterest">some value</textarea>
<input type='button' id="doStuff" value="do" />
<script>
$('#doStuff').live('click',function(){
show modal window
var val = $('#textareaOfInterest').val();
$.ajax({
....
data: "&textArea="+val,
success: function(result)
{
... do stuff with the result....
hide modal window
}
});
});
</script>
使用jquery ajax搜索示例,因为我不清楚语法。
希望它有所帮助, 问候, 亚历
答案 1 :(得分:0)
$bio = $_GET['bio']; /* or $_POST if your send data with jQuery $.POST */
是你需要加载textarea的值
请注意,您应该在表单中指定send方法,并且为了应用程序安全性,请针对CSRF请求发送某种隐藏令牌,在进行任何数据操作(如数据库插入)之前,您应该认真清理每个你收到的输入
答案 2 :(得分:0)
从表单中进行AJAX调用:
<!-- #dialog is the id of a DIV defined in the code below -->
<a href="#dialog" name="modal">Simple Modal Window</a>
<div id="boxes">
<!-- #customize your modal window here -->
<div id="dialog" class="window">
<textarea rows="2" cols="20" name="bio" id="bio">
Some text.
</textarea>
<input id="saveTxt" type="submit" value="Save" />
<!-- close button is defined as close class -->
<a href="#" class="close">Close it</a>
</div>
<!-- Do not remove div#mask, because you'll need it to fill the whole screen -->
<div id="mask"></div>
</div>
作为您的Javascript:
<script>
$(document).ready(function() {
//select all the a tag with name equal to modal
$('a[name=modal]').click(function(e) {
//Cancel the link behavior
e.preventDefault();
//Get the A tag
var id = $(this).attr('href');
//Get the screen height and width
var maskHeight = $(document).height();
var maskWidth = $(window).width();
//Set height and width to mask to fill up the whole screen
$('#mask').css({'width':maskWidth,'height':maskHeight});
//transition effect
$('#mask').fadeIn(1000);
$('#mask').fadeTo("slow",0.8);
//Get the window height and width
var winH = $(window).height();
var winW = $(window).width();
//Set the popup window to center
$(id).css('top', winH/2-$(id).height()/2);
$(id).css('left', winW/2-$(id).width()/2);
//transition effect
$(id).fadeIn(2000);
});
//if close button is clicked
$('.window .close').click(function (e) {
//Cancel the link behavior
e.preventDefault();
$('#mask, .window').hide();
});
//if mask is clicked
$('#mask').click(function () {
$(this).hide();
$('.window').hide();
});
//if submit is clicked
$('input#saveTxt').click(function(event) {
event.preventDefault();
//Get the text from your textarea
var text = $('textarea#bio').val();
//Post it to your PHP page to insert it into your database
$.ajax({
url: "yourpage.php", //The URL you are posting to
type: "POST", //The way you post your data
dataType: "html", //The type of data you expect to get back
data: {text : text}, //Your data (thus the value of your textarea)
cache: false,
success: function(html) { //After the AJAX call was done, update the textarea with the HTML you got back
$('textarea#bio').val(html);
}
});
});
});
</script>
在 yourpage.php (您将数据发布到的页面)中,您可以直接获取它:
<?php
$bio = mysql_real_escape_string($_POST['text']);
//do your query
$sql = "Update members SET bio = '$bio' WHERE memberID='$memberID'";
$result = mysql_query($sql);
echo ("Profile Update Sucesful");
?>