js onclick 无效
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js onclick 无效相关的知识,希望对你有一定的参考价值。
<div class="windows" id="windows" style="display: block">
<div class="centent">
<div class="close" onclick="close();"></div>
</div>
</div>
<script type="text/javascript">
function close()
var E_id = document.getElementById("windows");
E_id.style.display='none';
</script >
为什么不能执行JS close(); 浏览运行可以的 点了没用
<div class="windows" id="windows" style="display: block">
<div class="centent">
<div class="close" onclick="diy_close();">点击消失</div>
内容:hello word
</div>
</div>
<script type="text/javascript">
function diy_close()
var E_id = document.getElementById("windows");
E_id.style.display='none';
</script > 参考技术A <div class="close" onclick="close();"></div>
把onclick="close();" 改成 onclick="close2();" 肯定行 参考技术B 把js代码放在div的上面,最好放在head标签里
Vue js POST 失败 onclick 登录“预检响应具有无效的 HTTP 状态代码 404”
【中文标题】Vue js POST 失败 onclick 登录“预检响应具有无效的 HTTP 状态代码 404”【英文标题】:Vue js POST fails onclick login "Response for preflight has invalid HTTP status code 404" 【发布时间】:2017-05-06 10:19:34 【问题描述】:我正在为 Vue 应用程序构建一个 RESTfull API,我在验证用户时遇到问题,我收到以下错误
XMLHttpRequest 无法加载 http://localhost:8000/oauth/token/。预检响应包含无效的 HTTP 状态代码 404
我的 Vue 代码
<script>
export default
data ()
return
email: '',
password: '',
error: ''
,
methods:
login ()
var data =
client_id: 2,
client_secret: 'GWSpaP77kEIFXSG2XklctCc7AXAoWcEq4tPQbneF',
grant_type: 'password',
username: this.email,
password: this.password
this.$http.post('http://localhost:8000/oauth/token/', data).then((response) =>
console.log(response)
, (response) =>
this.error = 'No response'
)
/* this.$http.get('http://localhost:8000/api/test').then((response) =>
console.log(response)
, (response) =>
this.error = 'No response'
) */
</script>
而 Laravel 中的 Route:list 是
+--------+----------+---------------------------------------------+------+---------------------------------------------------------------------------+---------------+
| Domain | Method | URI | Name | Action | Middleware |
+--------+----------+---------------------------------------------+------+---------------------------------------------------------------------------+---------------+
| | GET|HEAD | / | | Closure | web |
| | GET|HEAD | api/oauth/authorize | | Laravel\Passport\Http\Controllers\AuthorizationController@authorize | cors,web,auth |
| | DELETE | api/oauth/authorize | | Laravel\Passport\Http\Controllers\DenyAuthorizationController@deny | cors,web,auth |
| | POST | api/oauth/authorize | | Laravel\Passport\Http\Controllers\ApproveAuthorizationController@approve | cors,web,auth |
| | GET|HEAD | api/oauth/clients | | Laravel\Passport\Http\Controllers\ClientController@forUser | cors,web,auth |
| | POST | api/oauth/clients | | Laravel\Passport\Http\Controllers\ClientController@store | cors,web,auth |
| | DELETE | api/oauth/clients/client_id | | Laravel\Passport\Http\Controllers\ClientController@destroy | cors,web,auth |
| | PUT | api/oauth/clients/client_id | | Laravel\Passport\Http\Controllers\ClientController@update | cors,web,auth |
| | POST | api/oauth/personal-access-tokens | | Laravel\Passport\Http\Controllers\PersonalAccessTokenController@store | cors,web,auth |
| | GET|HEAD | api/oauth/personal-access-tokens | | Laravel\Passport\Http\Controllers\PersonalAccessTokenController@forUser | cors,web,auth |
| | DELETE | api/oauth/personal-access-tokens/token_id | | Laravel\Passport\Http\Controllers\PersonalAccessTokenController@destroy | cors,web,auth |
| | GET|HEAD | api/oauth/scopes | | Laravel\Passport\Http\Controllers\ScopeController@all | cors,web,auth |
| | POST | api/oauth/token | | Laravel\Passport\Http\Controllers\AccessTokenController@issueToken | cors,throttle |
| | POST | api/oauth/token/refresh | | Laravel\Passport\Http\Controllers\TransientTokenController@refresh | cors,web,auth |
| | GET|HEAD | api/oauth/tokens | | Laravel\Passport\Http\Controllers\AuthorizedAccessTokenController@forUser | cors,web,auth |
| | DELETE | api/oauth/tokens/token_id | | Laravel\Passport\Http\Controllers\AuthorizedAccessTokenController@destroy | cors,web,auth |
| | GET|HEAD | api/test | | Closure | api |
| | GET|HEAD | api/user | | Closure | api,auth:api |
+--------+----------+---------------------------------------------+------+---------------------------------------------------------------------------+---------------+
我尝试了很多方法都没有解决这个问题。
【问题讨论】:
【参考方案1】:您在 vue 中的网址是:
this.$http.post('http://localhost:8000/oauth/token/...
但是您的路线以 /api 为前缀:
this.$http.post('http://localhost:8000/api/oauth/token/...
【讨论】:
我确实尝试过,我得到了一个 cors 错误“XMLHttpRequest 无法加载 localhost:8000/api/oauth/token。请求的资源上没有 'Access-Control-Allow-Origin' 标头。来源 'localhost:8080 ' 因此不允许访问。” 如果后端使用不同的域,则必须启用 CORS:github.com/barryvdh/laravel-cors。如果您使用相同的域,则没有必要,例如localhost
用于两者,或者local.dev
等。
我使用 github.com/barryvdh/laravel-cors 作为 cors 并且还在 Kernal.php 中定义了它
你在 cors 中使用'allowedOrigins' => ['*'],
吗?
从 vue 获取请求工作正常,但只有发布 oauth/token 给我错误以上是关于js onclick 无效的主要内容,如果未能解决你的问题,请参考以下文章
JS (javascript)中getID后,onclick触发事件无效