我觉得这不应该发生,因为这样做很容易,但仍然:
我似乎无法操纵输入字段...请参阅此jsfiddle,我到目前为止所尝试的内容并不起作用:http://jsfiddle.net/53mMY/2/
基本上,我想做的就是当用户用鼠标点击它时(或者在鼠标输入时)修改文本的输入
即使我使用了诸如#username
或input[name="username"]
之类的选择器,但事件和val设置器都不起作用。
我已经阅读了jquery文档,他们没有提到这个......
有人可以帮忙吗?
UPDATE(似乎在jsfiddle中工作正常但在我的项目中没有):
剥离代码:
index.php:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, target-densitydpi=medium-dpi, user-scalable=0" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<!-- Stylesheets -->
<link rel="stylesheet" type="text/css"
href="<?php echo base_url();?>css/desktop.css" />
<link href='http://fonts.googleapis.com/css?family=Anaheim' rel='stylesheet' type='text/css'>
</head>
<body>
<?php require_once "login_header.php"; ?>
<div id="wrapper">
<?php require_once "footer.php"; ?>
</div>
</body>
</html>
login_header.php:
<div>
<script>
$('#username').val("yup");
console.log("nownow....");
$('input[name="username"]').click(function(){
console.log("hello!");
});
</script>
<h2> <?php echo lang("login_header.title");?> </h2>
<form>
<label for="username"><?php echo lang("login_header.username");?> :</label>
<input id="username" type="text" name="username">
<label for="password"><?php echo lang("login_header.password");?> :</label>
<input id="password" type="password" name="password">
</form>
</div>
答案 0 :(得分:1)
您忘记将脚本放在文档就绪处理程序中 -
$(function(){
$('#username').val("yup");
console.log("nownow....");
$('input[name="username"]').click(function(){
console.log("hello!");
});
});
答案 1 :(得分:1)
当你的jsFiddle将所有内容放在onLoad
处理程序中时,实际的页面脚本会在呈现html控件之前立即运行。只需将其包装在回调中:
$(function() {
$('#username').val("yup");
console.log("nownow....");
$('input[name="username"]').click(function(){
console.log("hello!");
});
});
答案 2 :(得分:0)
操纵你喜欢的输入字段
HTML
<input id=text type=text value=foo>
Jquery的
$("#text").click(function(){
$(this).val("bar");
});
修改强> 你可以在我的小提琴中看到这个: http://jsfiddle.net/53mMY/5/
为什么你的jquery不能在你的小提琴中工作可能是因为你没有告诉jsfiddle包含jquery源文件