Javascript 如何使文本区域成为只读但不会变灰
如何使文本区域成为只读但不会变灰 我正在使用此脚本,但它不起作用:Javascript 如何使文本区域成为只读但不会变灰,javascript,php,Javascript,Php,如何使文本区域成为只读但不会变灰 我正在使用此脚本,但它不起作用: $(".readonly").keydown( function keydown(e) { if(!e.ctrlKey) return false; // Cancel non ctrl-modified keystrokes if(e.keyCode == 65) return true;// 65 = 'a' if(e.keyCode == 67) return true;// 67 = 'c' return
$(".readonly").keydown(
function keydown(e) {
if(!e.ctrlKey) return false; // Cancel non ctrl-modified keystrokes
if(e.keyCode == 65) return true;// 65 = 'a'
if(e.keyCode == 67) return true;// 67 = 'c'
return false;
}
)
我试图使用
但它使字段变灰,我希望它是只读的,但不希望文本区域字段变灰
这是我的全部代码:
<body>
<form name="search" method="post" action="">
<fieldset style='width: 500px'>
<legend align='left'><strong>Search</strong></legend>
<p>
Seach for: <input type="text" name="find" id="find" /> in
<Select NAME="field" id="field">
<Option VALUE="testA">A</option>
<Option VALUE="testB">B</option>
<Option VALUE="testC">C</option>
<Option VALUE="testD">D</option>
</Select>
<input type="hidden" name="searching" value="yes" />
<input type="submit" name="search" id="search" value="Search" />
</p>
</fieldset>
</form>
<script>
$(".readonly").keydown(
function keydown(e) {
if(!e.ctrlKey) return false; // Cancel non ctrl-modified keystrokes
if(e.keyCode == 65) return true;// 65 = 'a'
if(e.keyCode == 67) return true;// 67 = 'c'
return false;
}
)
</script>
<?php
//This is only displayed if they have submitted the form
if (isset($_POST['searching']) && $_POST['searching'] == "yes")
{
//If they did not enter a search term we give them an error
if (empty($_POST['find']))
{
echo "<p>You forgot to enter a search term";
exit;
}
// Otherwise we connect to our Database
mysql_connect("host", "username", "passw") or die(mysql_error());
mysql_select_db("testdb") or die(mysql_error());
// We preform a bit of filtering
$find = strtoupper($_POST['find']);
$find = strip_tags($_POST['find']);
$find = trim ($_POST['find']);
$field = trim ($_POST['field']);
//Now we search for our search term, in the field the user specified
$data = mysql_query("SELECT * FROM testtable WHERE UPPER($field) LIKE UPPER('%$find%')");
//And we display the results
while($result = mysql_fetch_array( $data ))
{
$myRes = "<form action='' method='post'>
<fieldset style='width: 10px'>
<legend align='left'><strong>Results</strong></legend>
<p>
<table width='auto' border='1' cellspacing='1' cellpadding='1' align='center'>
<tr>
<th align='center' scope='row'>A</th>
<td><textarea class=readonly name=testA id=testA cols=65 rows=3>" . $result['testA'] . "</textarea></td>
</tr>
<tr>
<th scope='row'>B</th>
<td><textarea class=readonly name=testB id=testB cols=65 rows=3>" . $result['testB'] . "</textarea></td>
</tr>
</table>
</p>
</fieldset>
</form>";
}
echo $myRes;
//This counts the number or results - and if there wasn't any it gives them a little message explaining that
$anymatches=mysql_num_rows($data);
if ($anymatches == 0)
{
echo "Sorry, but we can not find an entry to match your query<br><br>";
}
//And we remind them what they searched for
echo "<b>Searched For:</b> " .$find;
}
?>
</body>
搜索
搜索:在
A.
B
C
D
$(“.readonly”).keydown(
功能键控(e){
如果(!e.ctrlKey)返回false;//取消未按ctrl键修改的击键
如果(e.keyCode==65)返回true;//65='a'
如果(e.keyCode==67)返回true;//67='c'
返回false;
}
)
你可以使用css
差不多
textarea[readonly="readonly"], textarea[readonly] { //your styling }
乙二醇
还请注意,mysql_u函数已被弃用。您应该使用准备好的语句来MySQLi或PDO
查看您正在使用的代码class=readonly,除非您已经在css中实际创建了您应该使用的类
<textarea readonly></textarea>
您可以使用css
差不多
textarea[readonly="readonly"], textarea[readonly] { //your styling }
乙二醇
还请注意,mysql_u函数已被弃用。您应该使用准备好的语句创建MySQLi或PDO
查看您正在使用的代码class=readonly,除非您已经在css中实际创建了您应该使用的类
<textarea readonly></textarea>
灰显部分听起来像是你在使用属性disabled
而不是属性readonly
@larssy1不,我没有使用disabled
,但是你称它为颜色…我不希望文本区域在我使用readonly
时改变它的颜色,我不明白。您确定您的或外部样式表都不会影响具有该属性的textarea吗?@larssy1这只是Fredd建议的我的样式表的内容:@charset“utf-8”;/*CSS Document*/textarea[readonly=“readonly”]{//style}
灰色部分听起来像是在使用属性disabled
而不是属性readonly
@larssy1 no im没有使用disabled
,不管你怎么叫颜色……我不想让文本区在我使用readonly
时改变颜色,我不明白。您确定您的或外部样式表都不会影响具有该属性的textarea吗?@larssy1这只是Fredd建议的我的样式表的内容:@charset“utf-8”;/*CSS文档*/textarea[readonly=“readonly”]{//style}
不工作,我试图创建一个CSS文件:@charset“utf-8”;/*CSS文档*/textarea[readonly=“readonly”]{//style}
并链接它,但它不工作,仍然是可编辑的,并且不是只读的。那么,您是否在CSS中添加属性样式,而不仅仅是//style?仍然不工作,我已经更改为您的CSS代码,请注意,我试图将其反映到来自数据库的数据中,并转换为以下格式:A.“$result['testA']”。
@user2579439我在您的注释代码中没有看到readonly属性,只是要清楚,您是否尝试过“$result['domain']”废话…我已经感觉很累了…没有注意到…我可能在测试期间删除了它…谢谢你的帮助…现在一切都好了…不,它不起作用我试图创建一个CSS文件:@charset“utf-8”;/*CSS文档*/textarea[readonly=“readonly”]{//style}
并链接它,但它不工作,仍然是可编辑的,并且不是只读的。那么,您是否在CSS中添加属性样式,而不仅仅是//style?仍然不工作,我已经更改为您的CSS代码,请注意,我试图将其反映到来自数据库的数据中,并转换为以下格式:A.“$result['testA']”。
@user2579439我在您的注释代码中没有看到readonly属性,只是要清楚,您是否尝试过“$result['domain']”废话…我已经感觉很累了…没听清楚…我可能在测试时删除了它…谢谢你的帮助…现在一切都好了。。。